Introducing Instagram-like web application, built using Node.js, MongoDB, EJS, Express JS, and Gulp with an advanced authentication system. My application offers an intuitive and scalable solution for creating a social media platform for sharing photos and videos with a focus on performance and user experience.
Here authentication system is built on top of Passport.js and allows for seamless user registration and login, with password encryption and session management for added security whereas backend architecture utilizes Node.js and MongoDB to ensure optimal data storage and retrieval, while EJS provides a flexible templating engine for efficient front-end development.
In addition, the build process is streamlined with Gulp for fast and automated deployment. Whether you're a beginner or an experienced developer, my web application is a great reference point for building a scalable and robust social media platform.
⛔️ Please note that this project is a work in progress, and some features may not be fully functional or available. See the listed features below.
Client: EJS, SCSS
Server: Node-JS, Express, MongoDB Atlas, Redis
Build-tool: Sass Middleware (development), Gulp (Production)
https://github.com/Singh233/Social-Media-API
- Sign In/Up user ✋🏻
- Actions
- Post image 🌆
- Video uploads 🎥
- Comment on Post 💬
- Like Post ❤️
- Like comment
♥️ - Share Post ✉️
- Follow/Unfollow Users 👀
- Save Post 🔖
- User profile ⭐️
- Edit profile 🕺
- Search people 🔍
- Global Messaging ✅
- Direct Messaging ✅
- Online/offline status 🌐
- Typing Status 💬
- Receive incoming message notification 🔔
- Video/Voice calling 📞
- Responsivity
- 🖥️ Desktop
- 📱 Mobile
- Email of message request ✉️
- Share images in chat 🎆
- Tablet responsiveness 🟦
- Clone the project
git clone https://github.com/Singh233/Social-Web-App.git
- Go to the project directory
cd Social-Web-App
- Set up Environment variables (Mac/Ubuntu/Linux)
sudo vi ~/.bash_profile
- Save profile (Mac/Ubuntu/Linux)
source ~/.bash_profile
- Install Redis on system and run
https://redis.io/docs/getting-started/installation/
- Install the packages
npm install
- Start the server
npm start
- Clone the project
git clone https://github.com/Singh233/Social-Web-App.git
- Go to the project directory
cd Social-Web-App
- Pull the docker-setup branch
git pull origin docker-setup
- (NOTE) Add .env and SSL (certificate and key) files to project
Social-Web-App/ssl/
- Run command
docker compose up
To run this project, you will need to add the following environment variables to your .env file
MONGODB_CLUSTER_PASSWORD
CODEIAL_ENVIRONMENT
CODEIAL_ASSET_PATH
CODEIAL_JWT_SECRET
CODEIAL_SESSION_KEY
CODEIAL_GOOGLE_CLIENT_ID
CODEIAL_GOOGLE_CLIENT_SECRET
CODEIAL_GOOGLE_CALLBACK_URL
CODEIAL_FACEBOOK_CLIENT_ID
CODEIAL_FACEBOOK_CLIENT_ID
CODEIAL_GITHUB_CLIENT_ID
CODEIAL_GITHUB_CLIENT_ID
CODEIAL_GMAIL_USERNAME
CODEIAL_GMAIL_PASSWORD
CODEIAL_DB
CODIEAL_DEVELOPMENT_DB
CODIEAL_PRODUCTION_DB
CODEIAL_CERTIFICATE
CODEIAL_CERTIFICATE_KEY
SANAM_SOCIAL_AWS_MACHINE_IP
Here are some more Cool Projects
I'm an Aspiring full stack developer... Love to create, design and build cool projects 😎 and have passion for creating innovative solutions to complex problems using cutting-edge technologies. I have a strong understanding of both front-end and back-end development, and constantly seeking to improve my skills in these areas.
If you have any feedback, please reach out to me at sanambir123@gmail.com