Skip to content

TodoBunny is a lightweight, user-friendly To-Do list application built with React and Vite. It allows users to add and delete tasks with a clean, modern interface.

Notifications You must be signed in to change notification settings

sumudu-k/ToDoBunny--DockerHub-GitHub_Actions-AWS

Repository files navigation

🐰 ToDoBunny — A Simple To-Do App with Docker, GitHub Actions, and AWS ECS

ToDoBunny is a lightweight and cute to-do application built with React (Vite).
The project showcases a full CI/CD pipeline using Docker, GitHub Actions, Docker Hub, and AWS ECS (Fargate).

🚀 Live Demo: http://51.21.221.42/

Visit Live Website

📦 Technologies Used

  • React (Vite) – Frontend framework
  • Docker – Containerization
  • Docker Hub – Container registry
    DockerHub: sumudu21/todo-bunny
  • GitHub Actions – CI/CD pipeline
  • AWS ECS (Fargate) – Container orchestration
  • AWS VPC, Security Groups, Subnets – Network infrastructure

🐳 Run Locally Using Docker

You can pull and run the Docker image from Docker Hub without cloning the code.

# Pull image from DockerHub
docker pull sumudu21/todo-bunny
# Run container on port 5173
docker run -d -p 5173:80 --name todo-bunny sumudu21/todo-bunny

Then open your browser and go to: 👉 http://localhost:5173


📥 Setup Locally from Source

# Clone the repository
git clone https://github.com/sumudu-k/ToDoBunny--DockerHub-GitHub_Actions-AWS.git
cd ToDoBunny--DockerHub-GitHub_Actions-AWS
# Install dependencies
npm install
# Run development server
npm run dev

The app will be available at: 👉 http://localhost:5173


☁️ Deployment on AWS (Fargate)

The app is containerized using Docker and deployed to AWS ECS (Fargate) with the following setup:

🔧 AWS Resources Used

Resource Description
ECR Stores Docker image
VPC/Subnets Custom networking setup
Security Groups Opens port 80 for public access
ECS Cluster Manages tasks
Task Definition Config for container CPU, memory, ports

✅ ECS Task Settings

  • CPU: 256 (0.25 vCPU)
  • Memory: 512 MiB
  • Container Port: 80
  • Protocol: HTTP

🔁 CI/CD with GitHub Actions

Every time code is pushed to the main branch, GitHub Actions will:

  • Build the Docker image
  • Push it to DockerHub

🌐 Visit Live on AWS

App is publicly hosted on:


👤 Author

Sumudu Kulathunga


📸 Screenshots

Screenshot 1

Locally Runs

Screenshot 2

AWS Deployed


If you found this project useful or inspiring:

Star the repo
🍴 Fork it to contribute or build your own version
📢 Share it with others who might find it helpful

About

TodoBunny is a lightweight, user-friendly To-Do list application built with React and Vite. It allows users to add and delete tasks with a clean, modern interface.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published