Skip to content

PikuzaMarie/project-management

Repository files navigation

Project management app

Fancy todo list where you can create projects with multiple tasks!

Game UI

App UI

How to run the project locally

0. Prerequisities:

  • If you don't have Node.js on your PC, install it here (use version 20.18.0 or above)

  • Verify node version

node -v // Should print "v20.18.0" or above.
  • Verify npm version
npm -v // Should print "10.9.0" or above.

1. Clone the repository:

git clone https://github.com/PikuzaMarie/project-management.git

2. Go to the directory:

cd project-management

3. Install dependencies:

npm install

4. Start the project

It will automatically run in your default browser at http://localhost:3000/

npm run dev

Features

  • Create, view, delete projects & tasks for the project
  • Validate input data; if it's invalid, show modal with info message
  • Display fallback content if no project is selected if there are no tasks for the project yet
  • Used refs to get data from inputs
  • Used forwardRef, useImperativeHandle to create a modal window and call it on other components
  • Used createPortal to move the modal window higher in the DOM tree for better accessibility and semantics

Extra

  • Used Context API together with useReducer() for state management - logic could be found in store folder
  • Date formatting using local settings
  • Clean code with the use of ESLint, Prettier & lint-staged
  • Deploy on Netlify so you can manage your business plans

Contribution

This project was developed using materials from the'React - The Complete Guide 2025' instructed by Maximilian Schwarzmüller at Academind: link to github repo