Skip to content

destocot/project-management

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Project Management

project-image

Full-stack project management application. Manage your projects through a kanban board inspired design.

shieldsshieldsshieldsshieldsshieldsshieldsshieldsshieldsshieldsshieldsshieldsshieldsshields

🚀 Demo

Note: This project is hosted on render's generous free tier. You may need to wait 1-2 minutes for the website to start up.

https://project-management-26ne.onrender.com

Project Screenshots:

project-screenshot

project-screenshot

project-screenshot

project-screenshot

project-screenshot

project-screenshot

🧐 Features

Here're some of the project's best features:

  • Built on the scalable NestJS framework for a well-structured and maintainable TypeScript backend.
  • Employs TypeORM as the ORM for efficient and type-safe interaction with a PostgreSQL database.
  • Implements robust user authentication and session management using Passport.js.
  • Utilizes the blazing-fast Vite.js build system for a streamlined development experience.
  • Leverages React Router to enable seamless navigation within the application.
  • Constructs a visually appealing and accessible user interface with the Chakra UI component library.
  • Employs Redux for predictable and centralized state management.
  • Auto generated Swagger API documentation for all API endpoints and schemas.

🛠️ Installation Steps:

1. Clone repository

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

2. Enter client directory

cd client

3. Install client dependencies (use npm or yarn if prefer red)

pnpm install

4. Enter server directory

cd server

5. Create .env file

touch .enc

6. Fill in PostgreSQL database environment variables (make sure the database you set in DB_NAME already exists)

DB_HOST=FILL_ME DB_PORT=5432 DB_USERNAME=FILL_ME DB_PASSWORD=FILL_ME DB_NAME=FILL_ME

7. Fill in JWT_SECRET environment variable

JWT_SECRET=FILL_ME

8. (Optional) Fill in PORT environment variable

PORT=FILL_ME

9. If PORT environment variable is differnet from 8080 edit in vite.config.ts in client directory

 server: {
  proxy: {
    "/api": {
      target: "http://localhost:FILL_ME",
      changeOrigin: true
      }
    }
  }

10. (Optional) Seed database in server directory

pnpm db:seed email=FILL_ME passwod=FILL_ME

11. Start vite.js server

pnpm dev

12. Start nest.js server

pnpm start:dev

Issues

If you are having issues connecting to the database check for the following things.

  • the database under the DB_NAME environment variable exists.
  • if you have DB_SYNCHRONIZE set to false or undefined, you will need to either run the seed command (see installation step 10) or run a migration.

Running a migration (pnpm will not work here, use npm to pass migration name)

npm run migration:generate --name=FILL_ME
npm run migration:run

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages