An open API service indexing awesome lists of open source software.

https://github.com/gauravchauhan25/snapgram

Snapgram is a modern social media web application built using React.js, featuring a robust Authentication System with Google OAuth for seamless user login and logout. The platform ensures secure access by requiring users to authenticate before engaging with the app. Powered by Appwrite as the Backend-as-a-Service (BaaS), it efficiently handles.
https://github.com/gauravchauhan25/snapgram

appwrite css javascript jsx nodejs oauth react-router reactjs socket-io

Last synced: 3 months ago
JSON representation

Snapgram is a modern social media web application built using React.js, featuring a robust Authentication System with Google OAuth for seamless user login and logout. The platform ensures secure access by requiring users to authenticate before engaging with the app. Powered by Appwrite as the Backend-as-a-Service (BaaS), it efficiently handles.

Awesome Lists containing this project

README

          

# πŸ“Έ Snapgram – Connect. Share. Inspire. 🌍

A modern **Instagram-inspired** social media platform built with **React.js**, powered by **Appwrite** as the **Backend-as-a-Service (BaaS)**, and secured with **Google OAuth** authentication. **Snapgram** is designed for creators and users who want a **seamless**, **fast**, and **responsive photo-sharing experience**.

## πŸš€ Features

- πŸ” **Google OAuth Authentication & Email OTP Verification** – Secure sign-in and sign-out powered by Appwrite’s integrated OAuth support.
New users can also verify their email using a 6-digit OTP that expires automatically after 5 minutes to ensure secure account creation.

- πŸ‘€ **User Profiles** - Each user has a profile displaying:

- Username, Name, Bio
- Total Posts
- Followers and Following counts
- Avatar image

- 🏠 **Home Feed** - View all posts from all users in real-time.

- πŸ“ **Create Post** - Upload a new post! - Auto-generated Post ID and Creation Timestamp\

- πŸ”Ž **Search** - A search feature to discover people and posts by tags or usernames.
- 🎞️ **Reels** - A separate section to scroll short video-based content.
- πŸ“– **Stories** - Users can upload stories that automatically expire after 24 hours, keeping content fresh and relevant.

- πŸ’¬ **Social Media Functionality** – Users can interact, post, and engage.
- πŸ“± **Fully Responsive UI** – Smooth experience on all devices.
- ⚑ **Fast & Scalable** – Optimized for performance.
- βš™οΈ **Settings Panel** - Customize your profile, change name, username, bio, and access additional features like:
- πŸ“¬ Help Center – Access guides, FAQs, and support information for using Snapgram.
- πŸ“– About Page – Learn more about the developer, the project, and its features.

- ⚑ **Optimized Performance** - Clean state management and API integration ensure fast rendering and smooth transitions.

## πŸ› οΈ Tech Stack

- **Frontend:** React.js, React Router DOM
- **Authentication:** Google OAuth via Appwrite
- **Backend:** Appwrite (Database, Auth, Storage)
- **State Management** - React Context API
- **Hosting:** - Vercel

## βœ… Upcoming Features

- πŸ“¬ **Direct Messaging** (Planned) - A direct messaging system between users (under development).
- πŸ‘₯ **Followers / Following System** (Planned) - Follow or unfollow users and see who follows you.
- 🌐 **Multi-language Support**
- πŸ›‘οΈ **Improved Security & Rate Limiting**

## 🚧 Current Status
- Snapgram is actively being developed. Contributions, feature ideas, and feedback are welcome! ⭐
- For support, bug reports, or feature requests, visit the [Help Center](https://snapgram-private.vercel.app/help-center).