The purpose of this project is to put into practice the C++ programming language and the lessons learned in the Data Structures and Algorithms course.
The project is a server application designed to generate health parameter graphs based on user input. It includes a web interface for user interaction and utilizes several technologies to handle HTTP requests, generate PNG images, and store user data.
- HTML/JavaScript:
- Couple of JS functions to send JSON from .
-
HTTP Server: Crow
- Crow is used to process HTTP requests, serve HTML content to the web UI, manage user sessions with cookies, and store user IDs in the database.
-
PNG Encoding: LodePNG
- LodePNG is used to encode graphs, that are renderer by writing pixels directly into a
std::vector.
- LodePNG is used to encode graphs, that are renderer by writing pixels directly into a
-
Database: SQLite
- SQLite is used to store user input data securely.
-
Clone the repository:
git clone git@github.com:grem-newfield/Algorithm_Project_SlimMachines.git cd Algorithm_Project_SlimMachines -
Build the project:
just build # LINUX ONLY # OR just docker-build # to run locally.
-
Run the server:
./slim_machines_app # OR just docker-run
- Open your web browser and navigate to
http://localhost:8080. - Input your health parameters as required.
- View the generated graphs on the web interface.
This project is provided "AS IS" without any warranty of any kind, express or implied. Use at your own risk. No license is granted.
- German Novopoltsev - @grem-newfield
- Sabbir Raihan Shishir - @srshishir04
- Vitalii Virronen - @VitaliiVIP