A simple Todo application with React frontend, Express backend, and PostgreSQL database, all containerized with Docker-Desktop (Need to install on window machine).
- Docker Desktop installed and running
- Clone this repository
- Start the application:
docker-compose up- Access the application:
- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
- Create, read, update, and delete todo items
- Mark todos as completed or active
- Data persistence using PostgreSQL
- Containerized deployment with Docker
.
├── docker-compose.yml # Docker Compose configuration
├── frontend/ # React frontend application
│ ├── Dockerfile
│ ├── public/
│ └── src/
├── backend/ # Express backend API
│ ├── Dockerfile
│ ├── controllers/
│ ├── models/
│ └── routes/
- GET /api/todos - Get all todos
- GET /api/todos/:id - Get a specific todo
- POST /api/todos - Create a new todo
- PUT /api/todos/:id - Update a todo
- DELETE /api/todos/:id - Delete a todo
To stop the application, press Ctrl+C in the terminal where it's running, or run:
docker-compose downTo completely remove the volumes (database data) as well:
docker-compose down -v