MERN + GraphQL Client and Project Management App This is a nano CRM app built with MERN stack (MongoDB, Express.js, React, and Node.js) and GraphQL. I plan on implementing Docker, Unit tests and to have this hosted in AWS.
- Create, edit, and delete clients and projects
- Assign projects to clients and track their progress
- Set deadlines and track time spent on tasks
- View reports on client and project performance
- Node.js
- MongoDB
- npm
- TypeScript
- Clone this repository
- Run
npm install
to install the dependencies - Start the MongoDB server
- Run
npm start
to start the app
Once the app is running, you can access it at http://localhost:4005 (Features that will be created in this repo, currently a WIP! :D)
-
To create a new client or project, click the "+" button in the top right corner of the screen. You can then enter the relevant information and click "Create"
-
To view or edit a client or project, click on its name in the list. You can then make any changes you need and click "Save"
-
To assign a project to a client, click on the project name and then click the "Assign Client" button. Select the client from the list and click "Assign"
-
To track the progress of a project, click on the project name and then click the "Progress" tab. You can then enter the percentage of completion for each task and click "Update"
-
To set a deadline for a project, click on the project name and then click the "Deadline" tab. Enter the deadline and click "Set"
-
To track time spent on tasks, click on the project name and then click the "Time Tracking" tab. Click the "Start Timer" button to start tracking time and the "Stop Timer" button to stop tracking time
-
To view reports on client and project performance, click on the "Reports" tab. You can then select the report you want to view and click "Generate"
This app is designed to help you learn about client and project management, and to provide you with a hands-on experience with MERN stack and GraphQL.
Here are some ideas for how you can use this app for hands-on learning:
- Create a simple project management system for your personal tasks or a small team
- Use the app to track the progress of a client project
- Experiment with different ways to use GraphQL to query the data
- Add new features to the app, such as the ability to attach files to projects or to send email notifications to clients
This MERN + GraphQL client and project management app is a great way to learn about these technologies and to gain hands-on experience with them. It is also a useful tool for managing your own clients and projects.