NodeSocial is a beginner-friendly backend project built using Node.js and Express.
It allows users to register, log in, create posts, and upload profile pictures, providing a simple social media–like experience.
The application demonstrates core backend concepts such as authentication, CRUD operations, file handling, and database relationships.
- 🔐 User Authentication (Register & Login using JWT)
- 🔑 Secure password hashing with bcrypt
- 🍪 Cookie-based authentication
- 📝 Create, edit, and view posts
- ❤️ Like / Unlike posts
- 👤 User profile with all posts
- 🖼️ Upload profile picture using Multer
- 💾 Store uploaded images in local disk storage
- 🔄 Dynamic rendering using EJS
- 🔗 MongoDB relationships (User ↔ Posts)
- Backend: Node.js, Express.js
- Database: MongoDB with Mongoose
- Authentication: JWT (JSON Web Token), bcrypt
- File Upload: Multer (Disk Storage)
- Frontend: EJS
- Styling: Tailwind CSS
Rohan Jha