Skip to content

harsh-chauhan-dev/NoteApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Personal Knowledge Management Platform

A production-ready full-stack web application that enables users to securely capture, organize, and manage personal knowledge in a centralized workspace.

Built using the PERN Stack (PostgreSQL, Express.js, React.js, Node.js), the platform provides secure authentication, protected user workspaces, and complete content management capabilities through a responsive and intuitive interface.


🌐 Live Demo

Frontend: Live Application

Backend API: API Server


📸 Application Preview

Authentication System

Authentication Page

Dashboard & Knowledge Workspace

Dashboard

✨ Features

Authentication & Security

  • JWT-based authentication
  • Refresh token session management
  • HTTP-only cookie security
  • Password hashing with bcrypt
  • Protected routes and middleware
  • User-specific authorization

Knowledge Management

  • Create notes
  • View all personal notes
  • Edit existing notes
  • Delete notes
  • Pin important notes
  • Persistent cloud-based storage

User Experience

  • Responsive design
  • Clean dashboard interface
  • Real-time updates
  • Form validation
  • Error handling
  • Mobile-friendly experience

🛠️ Tech Stack

Frontend

  • React.js
  • React Router
  • Context API
  • Fetch API
  • CSS3

Backend

  • Node.js
  • Express.js
  • JWT Authentication
  • bcrypt
  • Cookie Parser
  • CORS

Database

  • PostgreSQL
  • Neon Database

Deployment

  • Vercel (Frontend)
  • Render (Backend)
  • Neon (Database)

🏗️ System Architecture

User → React Frontend → Express API → PostgreSQL Database

Authentication Flow:

  1. User Login/Register
  2. JWT Access Token Generated
  3. Refresh Token Stored Securely
  4. Protected API Access
  5. User-Specific Data Authorization

📂 Core Functionality

User Management

  • User Registration
  • User Login
  • Secure Logout
  • Session Refresh

Notes Management

  • Create Note
  • Get All Notes
  • Get Single Note
  • Update Note
  • Delete Note
  • Pin Notes

🔐 Security Features

  • Password hashing using bcrypt
  • HTTP-only cookies
  • Cross-Origin Resource Sharing (CORS) protection
  • JWT access tokens
  • Refresh token authentication
  • Protected API endpoints
  • User-level data isolation

🎯 Learning Outcomes

This project demonstrates practical experience in:

  • Full Stack Development
  • REST API Design
  • Authentication & Authorization
  • PostgreSQL Database Design
  • Deployment & DevOps Fundamentals
  • Cloud Database Integration
  • Frontend State Management
  • Production Application Debugging

👨‍💻 Author

Harsh Chauhan

Aspiring Software Engineer focused on building scalable web applications and learning modern full-stack development practices.

About

A full-stack Notes Management application built with PostgreSQL, Express.js, React, and Node.js. Features secure JWT authentication, CRUD operations, protected routes, and responsive UI for efficient note organization.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors