An open API service indexing awesome lists of open source software.

https://github.com/mahmoud-abuyoussef/todo_list_web_application

A professional training project for building a responsive and modern Todo List Web Application, developed by a team of front-end developers under the supervision of a Senior Front-End Engineer This project simulates a real-world development environmentβ€”from receiving designs in Figma to deploying the final product.
https://github.com/mahmoud-abuyoussef/todo_list_web_application

authentication figma front-end fullstack-development mahmoud-abuyoussef mahmoudabuyoussef maintainer-mahmoud-abuyoussef nextjs open-source productivity-tools project-management realworld-frontend realworld-project tailwindcss task-management team-repo todolist-application typescript vercel webapp

Last synced: about 1 month ago
JSON representation

A professional training project for building a responsive and modern Todo List Web Application, developed by a team of front-end developers under the supervision of a Senior Front-End Engineer This project simulates a real-world development environmentβ€”from receiving designs in Figma to deploying the final product.

Awesome Lists containing this project

README

          

![Banner](https://github.com/mahmoud-abuyoussef/Todo_List_Web_Application/blob/main/.github/assets/banner.webp)

# πŸ“ Todo List Web App β€” Real-World Front-End Training Project

![Maintainer](https://img.shields.io/badge/Maintainer-Mahmoud%20Abuyoussef-blue?style=flat-square)

> πŸ§‘β€πŸ« **Note:** This project is part of a **professional front-end training program**, supervised by a senior Engineer to simulate a real-world team workflow.

A professional training project for building a responsive and modern **Todo List Web Application**, developed by a team of front-end developers under the supervision of a Senior Front-End Engineer.
This project simulates a real-world development environmentβ€”from receiving designs in Figma to deploying the final product.

---

## πŸ“š Table of Contents

- [Project Goal](#project-goal)
- [Tech Stack](#tech-stack)
- [UI & Design](#ui--design)
- [Core Functionalities](#core-functionalities)
- [API Documentation](#api-documentation)
- [Roadmap](#roadmap)
- [Project Board](#project-board)
- [Project Structure](#project-structure)
- [How to Contribute](#how-to-contribute)
- [Code of Conduct](#code-of-conduct)
- [Contributors](#contributors)
- [Project Manager](#project-manager)
- [Deployment](#deployment)
- [License](#license)
- [License Terms](#license-terms)
- [Attribution](#attribution)

## Project Goal

- Practice converting Figma designs into fully functional web pages.
- Learn how to collaborate effectively on a team using Git and GitHub.
- Write clean, maintainable, and scalable code.
- Experience full software development workflow (from development to production).

> πŸ’‘ Want to start your own version or contribute? Fork the repo or open a new issue!

---

![Status](https://img.shields.io/badge/Status-In_Progress-blue)
![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)

---

## Tech Stack

- ### 🧠 Programming Language

![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=fff)

- ### Frameworks
- #### CSS

![TailwindCSS](https://img.shields.io/badge/Tailwind%20CSS-%2338B2AC.svg?logo=tailwind-css&logoColor=white)

- #### JavaScript

![Next.js](https://img.shields.io/badge/Next-black?logo=next.js&logoColor=white)

- ### πŸ§ͺ Testing (Coming Soon)

> We plan to add unit and integration tests using:

- ![Jest](https://img.shields.io/badge/Jest-C21325?logo=jest&logoColor=fff)

> Tests will ensure UI and business logic behave as expected.

- ### Tools
- #### πŸ’» IDE/Code Editors

![Visual Studio Code](https://custom-icon-badges.demolab.com/badge/Visual%20Studio%20Code-0078d7.svg?logo=vsc&logoColor=white)

- #### Version Control System

![Git](https://img.shields.io/badge/Git-F05032?logo=git&logoColor=fff)
![GitHub](https://img.shields.io/badge/GitHub-%23121011.svg?logo=github&logoColor=white)

- #### Package Managers

![pnpm](https://img.shields.io/badge/pnpm-F69220?logo=pnpm&logoColor=fff)

- #### Design

![Figma Free Design](https://img.shields.io/badge/Figma-F24E1E?logo=figma&logoColor=white)

- #### Collaboration Tools

![Google Meet](https://img.shields.io/badge/Google%20Meet-00897B?logo=google-meet&logoColor=white)
![Git](https://img.shields.io/badge/Git-F05032?logo=git&logoColor=fff)
![GitHub Project](https://img.shields.io/badge/GitHub-%23121011.svg?logo=github&logoColor=white)

- ### Hosting

![Vercel](https://img.shields.io/badge/Vercel-%23000000.svg?logo=vercel&logoColor=white)

---

## UI & Design

### Design License

The UI design used in this project is based on a **free Figma template**, licensed for personal and educational use.
Figma License: [Free Figma Design Source](https://www.figma.com/design/GN707LPUS0ez58RygBmCFL/To-do-List-Web-App-Design--Community-?node-id=16-34&p=f&t=DTalImRlUljxSITz-0)

---

### Pages

- Register
- Login
- Dashboard
- My Tasks
- Vital Tasks
- Account Information
- Update Account Information
- Change Password
- Task Categories
- Create Categories
- View Task

---

### Popups

- Add New Task
- Edit Task
- Add Task Priority
- Edit Task Priority
- Edit Task Status

---

### Dropdowns

- Calendar
- Notifications

---

### Core Functionalities

- User Registration
- User Login
- User Logout
- Add Account Information
- Update Account Information
- Change Password
- Add / Edit / Delete Task
- Add / Edit / Delete Categories
- Add / Edit / Delete Task Priority
- Add / Edit Task Status
- Search Task

---

## API Documentation

[API Documentation](https://todolistwebapplication.up.railway.app)

---

## Roadmap

> This roadmap tracks the key milestones and progress of the Todo List Web App project. Each milestone groups related features and tasks to simulate a real-world agile workflow.

### Milestone: `v0.1 – Setup & Authentication`

- [x] Setup Project Structure.
- [x] Build Auth Layout (Shared Layout for Login/Register).
- [x] Build Register Page UI.
- [x] Build Login Page UI.
- [x] Integrate Register API.
- [x] Integrate Login API.
- [x] Persist User Session.
- [x] Protect Private Routes.

---

### Milestone: `v0.2 – Dashboard & Core UI`

- [x] Build Dashboard Layout UI.
- [ ] Build Notifications Dropdown UI.
- [ ] Build Calendar Dropdown UI.
- [ ] Build Dashboard – To-Do UI.
- [ ] Build Dashboard – Task Status UI.
- [ ] Build Dashboard – Completed Task UI.
- [ ] Build Vital Task Page UI.
- [ ] Build My Task Page UI.
- [ ] Build Task Card Component UI.
- [ ] Build View Task Page UI.

---

### Milestone: `v0.3 – Task Management Features`

- [ ] Build Add Task Popup UI.
- [ ] Build Edit Task Popup UI.
- [ ] Integrate Add Task API.
- [ ] Integrate Edit Task API.
- [ ] Integrate Delete Task API.

---

### Milestone: `v0.4 – Task Metadata (Status, Priority, Category)`

- [ ] Build Add Task Status Popup UI.
- [ ] Build Edit Task Status Popup UI.
- [ ] Integrate Add Task Status API.
- [ ] Integrate Edit Task Status API.
- [ ] Integrate Delete Task Status API.
- [ ] Build Add Task Priority Popup UI.
- [ ] Build Edit Task Priority Popup UI.
- [ ] Integrate Add Task Priority API.
- [ ] Integrate Edit Task Priority API.
- [ ] Integrate Delete Task Priority API.
- [ ] Build Task Categories Page UI.
- [ ] Build Create Task Category Page UI.
- [ ] Build Edit Task Category Popup UI.
- [ ] Integrate Add Task Categories API.
- [ ] Integrate Edit Task Categories API.

---

### Milestone: `v0.5 – Account Settings`

- [ ] Build Account Information Page UI.
- [ ] Build Update Account Information Page UI.
- [ ] Build Change Password Page UI.

### Milestone: `v1.0 – MVP Release`

- [ ] Final QA Testing.
- [ ] Test Responsive Design.
- [ ] Cross-browser Testing.
- [ ] Accessibility Review.
- [ ] Performance Optimization.
- [ ] Code Cleanup & Linting.
- [ ] Update Documentation.
- [ ] Prepare Production Build.
- [ ] Deploy to Vercel.
- [ ] Tag Release v1.0.

## Project Board

> πŸ—‚οΈ Project Board: [View on GitHub Projects](https://github.com/users/mahmoud-abuyoussef/projects/9)

## Project Structure

```
Todo List Web Applications
β”œβ”€ public
β”‚ β”œβ”€ favicon.ico
β”‚ └─ images
β”‚ β”œβ”€ auth-background.webp
β”‚ β”œβ”€ login.webp
β”‚ └─ register.webp
β”œβ”€ src
β”‚ β”œβ”€ app
β”‚ β”‚ β”œβ”€ api
β”‚ β”‚ β”‚ └─ [...path]
β”‚ β”‚ β”‚ └─ route.ts
β”‚ β”‚ β”œβ”€ auth
β”‚ β”‚ β”‚ β”œβ”€ layout.tsx
β”‚ β”‚ β”‚ β”œβ”€ login
β”‚ β”‚ β”‚ β”‚ └─ page.tsx
β”‚ β”‚ β”‚ └─ register
β”‚ β”‚ β”‚ └─ page.tsx
β”‚ β”‚ β”œβ”€ layout.tsx
β”‚ β”‚ └─ page.tsx
β”‚ β”œβ”€ modules
β”‚ β”‚ └─ auth
β”‚ β”‚ β”œβ”€ login
β”‚ β”‚ β”‚ β”œβ”€ components
β”‚ β”‚ β”‚ β”‚ └─ LoginForm.tsx
β”‚ β”‚ β”‚ β”œβ”€ services
β”‚ β”‚ β”‚ β”‚ └─ loginServices.ts
β”‚ β”‚ β”‚ └─ types
β”‚ β”‚ β”‚ └─ loginTypes.ts
β”‚ β”‚ └─ register
β”‚ β”‚ β”œβ”€ components
β”‚ β”‚ β”‚ └─ RegisterForm.tsx
β”‚ β”‚ β”œβ”€ services
β”‚ β”‚ β”‚ └─ registerServices.ts
β”‚ β”‚ └─ types
β”‚ β”‚ └─ registerTypes.ts
β”‚ β”œβ”€ providers
β”‚ β”‚ └─ Providers.tsx
β”‚ β”œβ”€ services
β”‚ β”‚ └─ apiClient.ts
β”‚ └─ styles
β”‚ └─ globals.css
β”œβ”€ tsconfig.json
β”œβ”€ .prettierrc
β”œβ”€ eslint.config.mjs
β”œβ”€ LICENSE
β”œβ”€ next.config.ts
β”œβ”€ package.json
β”œβ”€ pnpm-lock.yaml
β”œβ”€ postcss.config.mjs
└─ README.md

```

---

## How to Contribute

πŸ“Œ See [CONTRIBUTING.md](.github/CONTRIBUTING.md) for full contribution workflow and commit standards.

---

## Code of Conduct

🀝 We expect all contributors to follow our [Code of Conduct](.github/CODE_OF_CONDUCT.md).

## Contributors

| Avatar | Name | GitHub | LinkedIn |
| ------------------------------------------------------------------------------ | -------------------- | -------------------------------------------------------- | ------------------------------------------------------------------- |
| | **Ahmed Samy** | [@AhmedSamyEid](https://github.com/AhmedSamyEid) | [LinkedIn](https://www.linkedin.com/in/ahmed-samy-454b72365/) |
| | **Mahmoud Abu Zaid** | [@Mahmoud-abu-zaid](https://github.com/Mahmoud-abu-zaid) | [LinkedIn](https://www.linkedin.com/in/mahmoud-abu-zaid-742bb2365/) |
| | **Wedad Osama** | [@wedadosama](https://github.com/wedadosama) | [LinkedIn](https://www.linkedin.com/in/wedad-elkammash-252418309/) |

---

## Project Manager

### Mahmoud Abuyoussef

**Role:** Senior Front-End Engineer / Project Manager

[![Email](https://img.shields.io/badge/Email-D14836?style=flat&logo=gmail&logoColor=white)](mailto:mahmoudabuyoussef5@gmail.com)
[![GitHub](https://img.shields.io/badge/GitHub-181717?style=flat&logo=github&logoColor=white)](https://github.com/mahmoud-abuyoussef)
[![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=flat&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/mahmoudabuyoussef)
[![Linktree](https://img.shields.io/badge/Linktree-39E09B?style=flat&logo=linktree&logoColor=white)](https://linktr.ee/mahmoudabuyoussef)

Feel free to reach out for collaboration, feedback, or questions.

---

## Deployment

- [Todo List Web App](https://todolistwebapplication.vercel.app)

---

## License

[![MIT License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/mahmoud-abuyoussef/Todo_List_Web_Application/blob/main/LICENSE)

## License Terms

You're free to use this project under the MIT license.
However, **you must retain the license file and attribute the original author** (Mahmoud Abuyoussef) when reusing or modifying the codebase.

> ⚠️ If you reuse or modify this codebase, you **must** retain the original license and give appropriate credit to the author.

---

## Attribution

This project is led and maintained by **[Mahmoud Abuyoussef](https://github.com/mahmoud-abuyoussef)**
with valuable contributions from the development team.

Contributors:

- [Ahmed Samy](https://github.com/AhmedSamyEid)
- [Mahmoud Abu Zaid](https://github.com/Mahmoud-abu-zaid)
- [Wedad Osama](https://github.com/wedadosama)

You are welcome to contribute or reuse parts of the project under the terms of the MIT license.
Please retain proper credit when using this codebase.