A modern, full-stack multi-user Todo List application built with Next.js App Router.
Users can securely manage their tasks with authentication, deadlines, filtering, and a clean dashboard UI.
- π Authentication (Signup / Login)
- π€ Multi-user support
- β CRUD operations (Create, Read, Update, Delete todos)
- π Set deadlines for tasks
- π Dashboard stats:
- Total Todos
- Completed
- Pending
- Overdue
- π Search todos by title
- π― Filter todos:
- All
- Completed
- Pending
- Overdue
- β‘ Server Actions (Next.js App Router)
- π§ State management (Redux Toolkit)
- π¨ Responsive & modern UI
- Framework: Next.js (App Router)
- Language: TypeScript
- Database: PostgreSQL
- ORM: Drizzle ORM
- Authentication: Better Auth
- State Management: Redux Toolkit
- Styling: Tailwind CSS
app/ # App Router pages & layouts
components/ # Reusable UI components
lib/ # Auth, utilities, helpers
db/ # Database config & schema (Drizzle)
store/ # State management
actions/ # Server actions (CRUD logic)
git clone https://github.com/umerzafar4598/nextjs-todo-list-app.git
cd nextjs-todo-list-appnpm install
# or
yarn install
# or
pnpm installCreate a .env file in the root directory:
DATABASE_URL=your_database_url
BETTER_AUTH_SECRET=your_secret
BETTER_AUTH_URL=http://localhost:3000npm run devOpen: http://localhost:3000
- Server Actions for backend logic
- Session-based authentication
- Database abstraction with Drizzle ORM
- State synchronization between client & server
- Modular and scalable folder structure
You can deploy easily on:
- Vercel (recommended)
- Docker (optional)
npm run build
npm start- π Notifications for deadlines
- π± Mobile optimization
- π§ AI-based task suggestions
- π Advanced analytics
Contributions are welcome!
- Fork the repo
- Create a new branch
- Make your changes
- Submit a PR
This project is licensed under the MIT License.
Umer Zafar
- GitHub: https://github.com/umerzafar4598
β If you like this project, don't forget to star the repo!