Giter VIP home page Giter VIP logo

SnabbGET 🐐

SnabbGET logo

Graphic and fast shell and chatbox in C/C++.



Cloning

Use this command to clone SnabbGET:

git clone --recurse-submodules https://github.com/SnabbGET/SnabbGET

If you forgot to clone the submodules, you can still do:

git submodule update --init --recursive

What is SnabbGET?

A video of the shell:

SnabbGET demo image

Made with Asciinema

SnabbGET is a 'guified' terminal built with love ❤ for all beginners learning how to use a terminal.

The idea of creating this kind of terminal came out because we tought that it's pretty easy to be confused using a terminal, as a beginner. This terminal makes everything easier with an user interface! We will do our best to do the most beginner-friendly & easy to use terminal.

We'll focus on OS such as Windows and Linux. No MacOS for the moment, sorry :(

You can use the SnabbGET shell or the chatbox. Same features.

Compiling

Compiling the terminal edition (CLI):

Tools required

  • Version of C++ used: C++17;
  • make (or nmake on Visual Studio) or Execute the Make.* file;
  • A C++ compiler (lld almost required on Windows: ld take some hours vs 3s for lld);
  • Python interpreter on Windows, recommended on Linux.

First use

Use this command to compile the lbraries:

make libs

Compile

The Shell:

make
./output # .exe

The chatbox:

make chatbox
./output_chatbox # .exe

Contribute

If you want to change something, you must recompile the file:

  • File in cmd? <path/to/file>.
  • utils.cpp? compile_utils.
  • utils.hpp, shell.hpp or errors.hpp? you can recompile all. Just wite make.
  • shell.cpp, errors.cpp, reader.cpp or cli.cpp? compile_shell.
  • main.cpp? compile_main.
  • chatbox.cpp? compile_chatbox.
  • You created a file, and you won't modify the Makefile? <path/to/file>
make # <your command here>
make link # or link_chatbox
./output # [_chatbox] [.exe]

Debug:

make
make run

More informaitons about the GUI version will be given soon.

FAQ & Links

You have questions about SnabbGET?

Open an issue, ask us for information, see the wiki or see our project.

You can also open a PR to contribute to this project.

Thanks

SnabbGET use the Isocline library under the MIT License, the exprtk library under the MIT License, and the library "Lohmann, N. (2022). JSON for Modern C++ (Version 3.11.2) [Computer software].".

I used and adapt torrycrass' image converter to generate the images in assets/. The image came form Pixbay.

License

SnabbGET is under the MIT License.

SnabbGET's Projects

snabbget icon snabbget

Fast Graphical Emulator Terminal in C/C++ for everyone.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.