Skip to main content
← Back to Blog

Todo List Application

Project Overview

A modern, responsive todo list application built with Next.js, TypeScript, and Tailwind CSS. This application provides a clean and intuitive interface for managing tasks with features like adding, completing, and deleting todos.

Key Features

  • Create, read, update, and delete todo items
  • Mark todos as complete/incomplete
  • Filter todos by status
  • Responsive design for all devices
  • Dark/light theme support
  • Comprehensive test coverage
  • Docker containerization

Technology Stack

Next.jsTypeScriptTailwind CSSJestDocker

Project Structure

todo-list/
├── app/
│   ├── components/
│   │   └── Todo/
│   │       ├── todo.tsx        # Main Todo component
│   │       ├── todo.test.tsx   # Test file
│   │       └── styles.module.css # Styling
│   ├── page.tsx               # Main page component
│   └── layout.tsx             # Root layout
├── public/                    # Static files
├── tests/                     # Test files
├── Dockerfile                 # Docker configuration
├── jest.config.js            # Jest configuration
├── jest.setup.js             # Jest setup
├── next.config.ts            # Next.js configuration
├── package.json              # Project dependencies
└── tsconfig.json             # TypeScript configuration

Getting Started

To run this project locally, follow these steps:

  1. Clone the repository
  2. Install dependencies:npm install
  3. Run the development server:npm run dev
  4. Openhttp://localhost:3000in your browser

Testing

The project includes comprehensive test coverage, including unit tests, integration tests, and end-to-end tests.

  • Write tests for all components
  • Maintain high test coverage
  • Use meaningful test descriptions

Author: Divyani Pant

Last Updated: 7/7/2025