This project is a task management application built with React and Node.js. It allows users to create projects, add tasks to projects, and export project summaries as Gists on GitHub.
-
Project Management: Users can create new projects with titles and descriptions.
-
Task Management: Within each project, users can add, update, and delete tasks. Tasks have titles, descriptions, and statuses (pending or completed).
-
Drag and Drop: Tasks can be organized using drag and drop functionality.
-
Export to GitHub Gist: Users can export project summaries as Gists on GitHub, including pending and completed tasks.
-
Frontend: React, react-beautiful-dnd, axios
-
Backend: Node.js, Express.js, MongoDB
-
External APIs: GitHub API for Gists
-
Others: Joi for validation, Mongoose for MongoDB object modeling
-
Clone the repository: git clone https://github.com/your-username/project-name.git
-
Navigate to the project directory: cd project-name
-
Install dependencies:
-
Frontend: cd frontend && npm install
-
Backend: cd backend && npm install
-
Set up environment variables:
-
Create a .env file in the backend directory.
-
Add environment variables like
MONGODB_URI
,GITHUB_ACCESS_TOKEN
, etc. -
Start the backend server:
npm run serve
in the backend directory. -
Start the frontend server:
npm run start
in the frontend directory.
-
Tailwindcss
-
Headlessui
-
React router
-
Axios
-
UUID
-
Joi
-
Cors
-
Dotenv
Access the application in your web browser at http://localhost:3000.
LOGIN PAGE
Create a new project by clicking the "Add Project" button.
Add tasks to the project by clicking the "Add Todo" button.
Drag and drop tasks between columns to change their status.
Export the project summary to GitHub Gist by clicking the "Export Gist" button.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.