Social Media App Backend
A full-featured Social Media Application Backend built with Node.js, Express, TypeScript, and MongoDB. This project provides secure authentication, user management, friendships, chats, and advanced features like Two-Factor Authentication (2FA).
Project Overview
This backend powers a social media platform where users can:
Create accounts and authenticate securely
Manage profiles and account settings
Send and manage friend requests
Chat with friends in real time (API-ready)
Enable Two-Factor Authentication (2FA)
Administer users with role-based authorization
The project follows clean architecture principles with separation of concerns between routes, services, middleware, and database models.
Tech Stack
Node.js
Express.js
TypeScript
MongoDB & Mongoose
JWT Authentication (Access & Refresh Tokens)
Role-Based Authorization
Docker & Docker Compose
Project Structure