Skip to content
/ vibe Public

User-friendly and compact C++ web framework

License

Notifications You must be signed in to change notification settings

vibecc/vibe

Repository files navigation

Vibe 🍃

User-friendly and compact C++ Web Framework

vibe image

Table of Contents

  1. Installation
  2. Usage
  3. Compile
  4. Examples
  5. Support
  6. Contribution
  7. License

Installation

To install Vibe

cmake

CMake

$ git clone https://github.com/vibecc/vibe.git
$ cd Vibe
$ cmake .
$ cmake --build .
$ make install

npx

NodeJS

ready to use

$ npx create-vibe-static

docker

Docker

docker pull vibecc/vibe

Usage

To use Vibe in your project, include the header files and link the static library in your C++ compiler.

#include <vibe/vibe.h>

int main() {

    Router router;
    router.setPort(8080);


    router.get("/",{[&](Query &web) {
        web.send("Hello World");
    }});


    router.listen();
}

Compile

compile your project

$ g++ -std=c++17  main.cpp -o server -L. -lvibe

Examples

In the examples/ folder, you'll find examples of how to use Vibe for different use cases, such as dynamic routes, form handling, etc.

Support

Linux

Testing

cmake shell basic commands

cmake -DTESTING=ON -S. -B build 
cmake --build build/
cd build/
ctest

with NPM

npm run build
npm run test

Debug

for debug

npm run dev:run

and modify the file tests/debug.cpp

Contribution

Contributions are welcome! If you want to contribute to Vibe, please follow these guidelines:

  • Fork the repository.
  • Create a branch for your new feature (git checkout -b feature/new-feature).
  • Make your changes and commit meaningful messages.
  • Push your branch (git push origin feature/new-feature).
  • Create a pull request.

License

This project is licensed under the MIT License.