A simple todo application built with Node.js, Express, and PostgreSQL, fully containerized with Docker Compose.
- Simple and clean UI for managing todos
- PostgreSQL database for persistent storage
- Automatic database initialization
- Fully containerized with Docker
- Docker
- Docker Compose
-
Clone this repository or navigate to this directory
-
Start the application:
docker compose up
-
Open your browser and visit:
http://localhost:3000 -
Start adding todos!
To stop the application, press Ctrl+C in the terminal, then run:
docker compose downTo remove the database volume as well:
docker compose down -v.
├── docker-compose.yml # Docker Compose configuration
├── Dockerfile # Node.js app container definition
├── package.json # Node.js dependencies
├── server.js # Express server with todo logic
└── README.md # This file
The application uses the following default credentials (defined in docker-compose.yml):
- Database:
tododb - User:
todouser - Password:
todopass
- Application:
3000 - PostgreSQL:
5432