Skip to content

ayxxn-shxrif/ProjectX

Repository files navigation

aa

aa

aa

Store your projects with ease!

🔗 Check out!

Table of Contents

About the Project

A project management application, where you can store your projects in a MongoDB database. The frontend of the application is built with Pug and the backend with Express and Node.js. I wanted to experiment with different CSS styles such as Neomorphism 3D and gradients, so I decided to use them in this project though not push to this branch. I learned a lot while building this project and I hope it can be of help to someone else too!

Features

  • Add new projects with details such as name, description and date
  • Delete projects
  • View all projects in a list
  • Edit existing projects(WIP)
  • Filter projects based on their status (completed, ongoing, planned)(WIP)
  • Model View Controller pattern based application.
  • Authentication with use of passport.js.
  • Password encryption with bcrypt.js.
  • User session.
  • Application data models based on mongoose's schema based solution.
  • POST requests validation with express-validator.
  • User sign up option.
  • Login functionality.
  • Logout functionality.
  • Password confirmation custom validation.
  • Username duplication prevention.
  • Option to add new project for logged in users.

Technologies

  • Node.js
  • Express
  • Pug
  • CSS

Tools

  • Git and GitHub
  • Linux terminal
  • MongoDB Atlas(mongosh-shell)
  • Neovim

Third Party Code

  • mongoose

Build process

and To run the project, simply type on ur powershell || terminal || vscode terminal:

bash npm_install_run.sh 

Then click here!

Usage

Else u can manually run it by following the below steps:

  • Clone repository.
  • Run npm install && npm audit fix command in your terminal.
  • Create .env file
  • In .env file set up new environmental variable named MONGODB_URL and paste your own mongoDB connection link.
  • Run npm run start command in your terminal.
  • Server will listen to requests from localhost:3000.
  • Then click here!

Outcome

Front page login example Login page login example Signup page login example Input page login example

Contributions

Contributions are always welcome! If you have any suggestions or bug fixes, feel free to submit a pull request.

Authors

ayxxn-shxrif | LinkedIn