This repository contains the frontend code for Smart Room App. The application follows the Gitflow methodology, and its deployment is managed through fly.io. The codebase also includes a .github/workflows
folder with a pipeline that automates the deployment process whenever changes are merged into the main branch.
When starting an implementation of a new feature please follow this instruction to successfully integrate your feature on master:
- create new devlopment branch with the following name convention
feature/frontend-#123
for a feature implementation andbug/frontend-#123
for bugfixes. The number after the # indicates your ticket number you are working on. Don't create branches without a ticket number! - Implement your feature on your development branch
- Create a pull request for the master branch
- Two other developer have to review your branch
- If everything is okey, it will be integrated into the master
The application's architecture can be visualized as follows:
The frontend is deployed on fly.io, providing a scalable and reliable infrastructure. Automatic deployment is handled through the included GitHub Actions pipeline located in the .github/workflows
folder. Whenever changes are merged into the main branch, the pipeline triggers deployment to ensure a seamless update process.
For detailed instructions on deploying the backend manually, refer to the Deployment Guide.
- Clone project
- Install node.js (https://nodejs.org/en/download/)
- Run
npm install react-scripts --save
on CLI - Run
npm i react-bootstrap
on CLI - Run
npm i react-router-dom react-router-bootstrap
on CLI - Run
npm start
on CLI - Visit
localhost:3000
The library used to create the charts is Chart.js in conjunction with react-chartjs-2 which provides the charts as components. The documentation can be viewed at https://www.chartjs.org/ and https://react-chartjs-2.netlify.app/