Skip to content

thanveerathasni/node-user-management

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node User Management System

Node.js Express MongoDB Status Learning

A user management system built using Node.js, Express, MongoDB, and Handlebars (HBS).
This project was created as my first backend application while learning server-side development fundamentals.

Learning-focused project built to understand backend architecture, authentication, and role-based access.


Purpose

This project helped me understand and practice:

  • Backend MVC architecture
  • Session-based authentication
  • Admin vs User role separation
  • MongoDB integration using Mongoose
  • Secure password handling with bcrypt

Tech Stack

  • Node.js
  • Express.js
  • MongoDB
  • Mongoose
  • Handlebars (HBS)
  • Express-session
  • bcrypt

Features

User

  • User registration
  • Login & logout
  • Password hashing
  • Session-based authentication
  • Protected routes

Admin

  • Admin login
  • Admin dashboard
  • View all users
  • Add, edit, and delete users
  • Search users
  • Session-protected admin routes

Architecture

  • MVC pattern
  • Separate controllers for user and admin
  • Middleware-based authentication
  • Server-side rendered views using HBS

Project Structure

controllers/ model/ routes/ middleware/ views/ public/ server.js

What I Learned

How session-based authentication works

Password hashing using bcrypt

Role-based access control

Structuring backend applications professionally


Future Improvements

Use environment variables

Implement JWT-based authentication

Add React frontend

Rewrite backend using TypeScript

How to Run

npm install
npm start

http://localhost:3188

About

First backend project built to learn Node.js, Express, MongoDB, and session-based authentication.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors