An open-source task management application built using Next.js 14, offering a seamless and modern experience for creating, managing, sharing, and collaborating on tasks.
- Secure sign-up and login with a username and password.
- Role-based access control.
- Add tasks with fields like Title, Description, Due Date, and Status (Done/Pending).
- Edit and delete tasks with ease.
- Filter and search tasks by title or description.
- Share tasks via unique URLs for easy collaboration.
- No registration required to access shared tasks.
- Add and view comments on tasks for streamlined communication.
- Ideal for collaborative projects.
- Link tasks to public GitHub repositories.
- View metadata such as stars, forks, and contributors directly in the application.
- Sleek, mobile-responsive design powered by Shadcn-UI and Tailwind CSS.
- Fast page loads and smooth navigation across devices.
Technology | Purpose |
---|---|
Next.js 14 | Framework with App Router and Server Actions. |
Prisma ORM | Simplifies database interaction. |
NeonDB | Cloud-based Postgres database. |
Shadcn-UI | Pre-styled, customizable UI components. |
Tailwind CSS | Utility-first CSS framework for responsive design. |
React-Hook-Form | Efficient form handling. |
Zod | Form validation and API schema validation. |
TypeScript | Ensures type-safe development. |
Vercel | Fast, scalable deployment platform. |
- Built with Next.js 14 to deliver SSR (Server-Side Rendering) and SSG (Static Site Generation).
- Components styled with Tailwind CSS and designed using Shadcn-UI.
- Client-side state management via react-hook-form.
- Implemented using Next.js API Route Handlers and Server Actions.
- Ensures secure, efficient data handling.
- NeonDB hosts the PostgreSQL database.
- Prisma ORM manages schema migrations, database queries, and relations.
- Zod validates forms and API responses to ensure data integrity.
- Hosted on Vercel, ensuring fast global delivery.
- Real-Time Collaboration: Implement WebSockets for real-time task updates and multi-user edits.
- Task Progress Tracking: Visualize task progress using charts and dashboards.
- Notifications System: Integrate email and push notifications for task reminders and updates.
- Dark Mode: Add a dark theme for better usability during late hours.
- AI-Powered Insights: Provide task prioritization suggestions and productivity insights.
Table Name | Description |
---|---|
users | Stores user data (username, email, password). |
tasks | Contains task details (title, description, due date, status). |
comments | Holds comments associated with specific tasks. |
github_links | Stores GitHub repository links and fetched metadata. |
- Relational structure for secure and efficient data management.
- Prisma ORM simplifies schema migrations and querying.
The ToDo Application is a robust, scalable, and user-friendly platform for modern task management. By leveraging Next.js 14, Prisma ORM, and advanced UI components, it ensures a seamless experience for individuals and teams alike.
Future updates like real-time collaboration, AI-powered insights, and enhanced progress tracking aim to make it an indispensable productivity tool.
Check out the live application here
- Node.js v16+
- npm or yarn
- Clone the repository:
git clone https://github.com/Jeevansm_25/todo-application.git cd todo-application
- Install dependencies:
npm install
- Set up environment variables:
- Create a
.env
file in the root directory and configure database credentials.
- Create a
- Run the development server:
npm run dev
- Deploy easily on Vercel using the Vercel CLI or Dashboard.
Feel free to fork the project and contribute to it. Submit a pull request with any improvements or fixes!
This project is licensed under the MIT License. See the LICENSE file for details.