Demo video: https://www.youtube.com/watch?v=PqfwHBSBM7Y
Ensure you have the following installed on your system:
- Docker: Required to run the server-side services.
- Docker Compose: Required to orchestrate the Redis and MongoDB containers.
- Node.js: Required to run the Client and QR.
- npm: Required to manage dependencies and run scripts for the client and QR components.
Follow these steps to set up and run the project:
The server relies on Redis and MongoDB, which are managed via Docker Compose.
-
Navigate to the project root directory (where
docker-compose.ymlis located). -
Run the following command to start the Redis and MongoDB containers in detached mode:
docker compose up -d
This will set up and run the server-side dependencies in the background.
The client is located in the /client directory and requires environment configuration.
-
Navigate to the
/clientdirectory:cd client -
Rename the
.env.examplefile to.env:mv .env.example .env
-
Install the dependencies and start the client in development mode:
npm install --legacy-peer-deps npm run build npm run start
The client application will be accessible at
http://localhost:3000.
The QR component is located in the /qr directory and follows a similar setup process.
-
Navigate to the
/qrdirectory:cd qr -
Rename the
.env.examplefile to.env:mv .env.example .env
-
Install the dependencies and start the QR component in development mode:
npm install npm run build npm run start
The QR application will be accessible at http://localhost:3000.
- Ensure Docker and Docker Compose are running before starting the server.
- Verify that the
.envfiles in both/clientand/qrare correctly configured for your environment. - If you encounter issues, check the Docker container logs using
docker compose logsfor server-side troubleshooting.