Todo List Application using MERN Stack (MongoDB, Express.js, React, Node.js) and bootstrap with Typescript React. The Application also uses password hashing and salting for the user accounts by using bcryptjs.
ℹ️ This Application runs on all common platforms: macOS, Windows 10/11, Linux (tested on Ubuntu 22.04 LTS)
You can either run this application by setting up your local MongoDB database, or you can run the Application with Docker Compose
First you need to install MongoDB, I recommend also to install MongoDB Compass.
-
After you installed MongoDB run the local Database here you can find how to get started with mongoDB
-
Setting up Database
- create a new db called
todo
- in this db create two new collections called
todos
andusers
- create a new db called
- run in the directory
todo-backend
yarn install - edit the /todo-backend/.env: paste into the
SERVICE_IP_ADDRESS
field the valuelocalhost
- after installing all dependencies you can run the server with
yarn start
or with the development modeyarn dev
- run in the directory
todo-client
yarn install - edit
/todo-client/services/loginService
and/todo-client/services/todosService
and replace the base urlhttps://todo-backend:8080/
withhttps://localhost:8080/
- after installing all dependencies you can run the frontend with
yarn serve
- (optional) you can generate a production build of the Application with
yarn build
Now you are Ready to use the Application 🎉
in the root directory of the project run
docker-compose up -d --build
After the build process you can view the compose with
docker-compose ps
It should look similar to the following screenshot:
You can now open the Application with https://localhost:3000
Login Page
Register Page
If you find any errors or have any other suggestions for improvements i am happy about feedback! :)