Welcome to the Project Management Tool! This application is designed to help users create, manage, and track their projects and tasks efficiently. Built with modern web technologies, it provides a user-friendly interface and robust functionality to streamline project management processes. Each user's data is securely separated and personalized through Clerk authentication.
- User Authentication: Secure login and registration using Clerk.
- Project Management: Create, update, delete, and view projects.
- Task Management: Add, update, delete, and track tasks within projects.
- Deadline Tracking: Set and manage deadlines for projects and tasks.
- Progress Tracking: Monitor the progress of tasks and projects.
- User-specific Data: Each user's projects and tasks are linked to their email address, ensuring personalized data management.
- React: A JavaScript library for building user interfaces.
- Tailwind CSS: A utility-first CSS framework for rapidly building custom user interfaces.
- Axios: A promise-based HTTP client for making API requests.
- Clerk: A user management and authentication solution.
- Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine.
- Express.js: A web application framework for Node.js.
- MongoDB: A NoSQL database for storing project and task data.
- Mongoose: An Object Data Modeling (ODM) library for MongoDB and Node.js.
- React Router: For handling routing in the React application.
- Dotenv: For loading environment variables from a
.envfile.
- Node.js
- MongoDB
-
Clone the repository:
git clone https://github.com/your-username/project-management-tool.git cd project-management-tool/frontend -
Install dependencies:
npm install
-
Create a
.envfile in thefrontenddirectory and add your environment variables:REACT_APP_CLERK_FRONTEND_API=<your-clerk-frontend-api> REACT_APP_BACKEND_URL=http://localhost:5000
-
Start the development server:
npm start
-
Navigate to the backend directory:
cd project-management-tool/backend -
Install dependencies:
npm install
-
Create a
.envfile in thebackenddirectory and add your environment variables:MONGO_URI=mongodb://localhost:27017/project-management-tool CLERK_API_KEY=<your-clerk-api-key>
-
Start the backend server:
npm start
- Register or log in using the Clerk authentication system.
- Create new projects and add tasks to each project.
- Set deadlines and track the progress of tasks and projects.
- Each user's projects and tasks are linked to their email address, ensuring data is user-specific.
Contributions are welcome! Please feel free to submit a pull request or open an issue to improve the project.