organizer is another approach to creating a simple and easy to use solution for time and task management. The website will provide users with the ability to manage tasks and events on a calendar.
The project is under development. The minimum valuable product must include:
- authorization system
- creating, viewing, editing and deleting tasks
- ability to customize status, priority, link tasks to projects
- CRUD for events
- customizing colors of events and projects
- customizing the frequency of events in the calendar
Further development of the project suggests:
- habit and routine management
- adding a diary function to formally log activity and encourage reflection and mindfulness
- introduction of prioritization, multitasking, goal and motivation management tools
- emphasis on visualization and UX/UI design
The application built on the MERN stack.
-
Mongoose: An Object Data Modeling (ODM) library for MongoDB and Node.js. It's used to model the application data.
-
Express: A fast, unopinionated, and minimalist web framework for Node.js. It's used to build the server for the application.
-
React: A JavaScript library for building user interfaces. It's used to build the components of the application.
-
Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine. It's used to run the server for the application.
Packages also used in the project:
-
Jest: A JavaScript testing framework. It's used to write tests for the application.
-
Concurrently: A utility to run multiple commands concurrently. It's used to run the client and server parts of the application simultaneously.
For more information, see the docs file.
This project uses Husky, ESLint, and Prettier to enforce a consistent code style and catch potential issues.
Remember to run npm run setup
to ensure that Husky, ESLint, and Prettier are installed and set up correctly. For more information, see the docs file.
First, to setup all the directories run the following in the main directory:
npm run setup
The command will go into the client and server directories and set those up to be ran.
In the client and server directory there are two .env.example files. Create a copy and rename that to .env. Then follow the instructions in those files to fill in the right values.
To run the app in dev mode you can run the following command in the main directory:
npm run dev