{"id":15155281,"url":"https://github.com/muhammadaliashraf/nextjs-todo","last_synced_at":"2026-01-18T23:02:12.762Z","repository":{"id":244121512,"uuid":"810887652","full_name":"MuhammadAliashraf/NextJs-Todo","owner":"MuhammadAliashraf","description":"This repository contains a Todo application built with the MERN (MongoDB, Express.js, React.js, Node.js) stack and uses Next.js for server-side rendering and routing. Authentication is implemented using cookies.","archived":false,"fork":false,"pushed_at":"2024-06-12T21:59:06.000Z","size":225,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-11T13:42:28.802Z","etag":null,"topics":["api","application","expressjs","mern-project","mern-stack","mern-stack-app","next-auth","next-js","nextjs","nextjs13","nextjstodo","opensource","project","react-hooks","reactjs","ssr","todolist","todolist-application","vercel","vercel-deployment"],"latest_commit_sha":null,"homepage":"https://next-js-todo-roan.vercel.app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MuhammadAliashraf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-05T14:36:10.000Z","updated_at":"2024-06-12T21:59:09.000Z","dependencies_parsed_at":"2024-06-13T01:58:17.791Z","dependency_job_id":"d51f672f-6d12-409a-af4e-4a57a8d3248e","html_url":"https://github.com/MuhammadAliashraf/NextJs-Todo","commit_stats":null,"previous_names":["muhammadaliashraf/nextjs-todo"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAliashraf%2FNextJs-Todo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAliashraf%2FNextJs-Todo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAliashraf%2FNextJs-Todo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MuhammadAliashraf%2FNextJs-Todo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MuhammadAliashraf","download_url":"https://codeload.github.com/MuhammadAliashraf/NextJs-Todo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247369925,"owners_count":20927927,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","application","expressjs","mern-project","mern-stack","mern-stack-app","next-auth","next-js","nextjs","nextjs13","nextjstodo","opensource","project","react-hooks","reactjs","ssr","todolist","todolist-application","vercel","vercel-deployment"],"created_at":"2024-09-26T18:04:11.791Z","updated_at":"2026-01-18T23:02:12.729Z","avatar_url":"https://github.com/MuhammadAliashraf.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# MERN Stack Todo Application with Authentication (Cookie-based) using Next.js\n\nThis repository contains a Todo application built with the MERN (MongoDB, Express.js, React.js, Node.js) stack and uses Next.js for server-side rendering and routing. Authentication is implemented using cookies.\n\n## Features\n\n- **Authentication**: User registration and login using cookies for session management.\n- **Todo CRUD Operations**: Create, Read, Update, and Delete Todos.\n- **Server-side Rendering (SSR)**: Enhanced performance and SEO benefits with Next.js.\n- **API Routes**: Backend APIs using Express.js for handling Todo operations and authentication.\n\n## Prerequisites\n\n- Node.js and npm installed on your machine.\n- MongoDB instance (local or cloud-based) for database storage.\n\n## Getting Started\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/MuhammadAliashraf/NextJs-Todo.git\n   ```\n\n2. **Install dependencies**:\n\n   ```bash\n   npm install\n   ```\n\n3. **Set up environment variables**:\n\n   Create a `.env` file in the root directory and configure the following variables:\n\n   ```plaintext\n   MONGODB_URI = your_mongodb_connection_string\n   JWT_SECRET = your_jwt_secret_key\n   URL= API URL\n   ```\n\n4. **Start the development server**:\n\n   ```bash\n   npm run dev\n   ```\n\n   This will start the Next.js development server and the Express server concurrently.\n\n5. **Access the application**:\n\n   Open your browser and go to `http://localhost:3000` to view the Todo application.\n\n## Folder Structure\n\n- **`/pages`**: Next.js pages for routing and SSR.\n- **`/components`**: React components for UI elements.\n- **`/api`**: Backend API routes using Express.js.\n- **`/models`**: MongoDB models for Todo and User schemas.\n- **`/utils`**: Utility functions such as authentication middleware and error handlers.\n\n## API Routes\n\n- `/api/auth/register`: Register a new user.\n- `/api/auth/login`: Login and create a session using cookies.\n- `/api/auth/logout`: Logout and destroy the session.\n- `/api/todos`: CRUD operations for Todos (requires authentication).\n\n## Technologies Used\n\n- **Next.js**: React framework for SSR and client-side rendering.\n- **React.js**: Frontend library for building user interfaces.\n- **Express.js**: Backend framework for handling API requests.\n- **MongoDB**: NoSQL database for storing Todos and User data.\n- **JWT**: JSON Web Tokens for authentication and session management.\n\n\n## Author\n\n- Muhammad Ali\n- 030-62767-542\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE.md file for details.\n\nFeel free to customize the sections as per your project's specific details and add more detailed explanations or usage instructions where necessary. This template should give you a good starting point for documenting your MERN stack Todo application with authentication using cookies in Next.js.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhammadaliashraf%2Fnextjs-todo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmuhammadaliashraf%2Fnextjs-todo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhammadaliashraf%2Fnextjs-todo/lists"}