ReactCircle is a fully functional, full-stack social media dashboard application built using the MERN stack (MongoDB, Express.js, React, Node.js). It simulates core functionalities of modern social platforms like Instagram or Facebook but tailored into a clean, minimal, and responsive interface.
Users can register and authenticate using JWT-based login or Google OAuth, create posts with images, interact with other users' content, comment and like posts, and manage their own profile and posts. This app showcases not only frontend UI/UX design using React and Bootstrap but also a secure and scalable backend with authentication, role validation, and cloud-based media handling via Cloudinary.
- π Frontend: https://reactcircle.vercel.app
-
π Secure JWT authentication (access + refresh tokens).
-
π Google OAuth 2.0 login via Passport.js integration.
-
π§ User session persists with refresh-token based auto-renewal.
-
πΌοΈ Users can create posts with: Title, Caption, Description, Image (uploaded to Cloudinary)
-
βοΈ Ability to edit or delete your own posts.
-
π View other users' posts, including interacted posts.
-
π¬ Interactions
-
β€οΈ Like or Unlike any post.
-
π Add, Edit, and Delete your own comments on posts.
-
π View post engagement (total likes, total comments).
-
π§Ύ Each user has a personal profile displaying their posts and info.
-
π οΈ Edit profile including profile picture (Cloudinary), username, and bio.
-
π Search and view other usersβ public profiles.
- π Search users by name or email
- React
- React Router
- Axios
- Bootstrap
- Node.js + Express.js
- MongoDB + Mongoose
- Passport.js (Google OAuth 2.0)
- JWT for Authentication
- Cloudinary (image uploads)
- Multer & multer-storage-cloudinary
cd backend
npm install
npm startcd client
npm install
npm startMONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secret-
π₯οΈ Frontend β Deployed on Vercel
-
π§ Backend β Deployed on Render
-
βοΈ Media Storage β Cloudinary