Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tonishantyadav/snapgram
Build a modern social app with a stunning UI with a native mobile feel, a special tech stack, an infinite scroll feature, and amazing performance using React JS, Appwrite, TypeScript, and more.
https://github.com/tonishantyadav/snapgram
appwrite chakra-ui react react-query react-router typescript
Last synced: about 1 month ago
JSON representation
Build a modern social app with a stunning UI with a native mobile feel, a special tech stack, an infinite scroll feature, and amazing performance using React JS, Appwrite, TypeScript, and more.
- Host: GitHub
- URL: https://github.com/tonishantyadav/snapgram
- Owner: tonishantyadav
- License: other
- Created: 2024-01-25T10:21:01.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-01-26T07:37:08.000Z (about 1 year ago)
- Last Synced: 2024-11-09T11:36:07.780Z (3 months ago)
- Topics: appwrite, chakra-ui, react, react-query, react-router, typescript
- Language: TypeScript
- Homepage: https://snapgram-iota-dusky.vercel.app/signin
- Size: 19.7 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Snapgram
Explore social media with this user-friendly platform that has a nice look and lots of features. Easily create and explore posts, and enjoy a strong authentication system and quick data fetching using React Query for a smooth user experience.
## 📋 Contents
1. ⚙️ [Tech Stack](#tech-stack)
2. 🔋 [Features](#features)
3. 🚀 [Quick Start](#quick-start)
4. ❤️ [Contributing](#contributing)
5. 🛡️ [License](#license)
6. 🙂 [Contact](#contact)- Appwrite
- Chakra-UI
- TypeScript
- React.js
- React Query
- Vite## 🔋 Features
👉 **Authentication System**: A robust authentication system ensuring security and user privacy
👉 **Explore Page**: Homepage for users to explore posts, with a featured section for top creators
👉 **Like and Save Functionality**: Enable users to like and save posts, with dedicated pages for managing liked and saved content
👉 **Detailed Post Page**: A detailed post page displaying content and related posts for an immersive user experience
👉 **Profile Page**: A user profile page showcasing liked posts and providing options to edit the profile
👉 **Browse Other Users**: Allow users to browse and explore other users' profiles and posts
👉 **Create Post Page**: Implement a user-friendly create post page with effortless file management, storage, and drag-drop feature
👉 **Edit Post Functionality**: Provide users with the ability to edit the content of their posts at any time
👉 **Responsive UI with Bottom Bar**: A responsive UI with a bottom bar, enhancing the mobile app feel for seamless navigation
👉 **React Query Integration**: Incorporate the React Query (Tanstack Query) data fetching library for, Auto caching to enhance performance, Parallel queries for efficient data retrieval, First-class Mutations, etc
👉 **Backend as a Service (BaaS) - Appwrite**: Utilize Appwrite as a Backend as a Service solution for streamlined backend development, offering features like authentication, database, file storage, and more
and many more, including code architecture and reusability
Follow these steps to set up the project locally on your machine.
**Prerequisites**
Make sure you have the following installed on your machine:
- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/en)
- [npm](https://www.npmjs.com/) (Node Package Manager)**Cloning the Repository**
```bash
git clone https://github.com/tonishantyadav/Snapgram.git
cd Snapgram
```**Installation**
Install the project dependencies using npm:
```bash
npm install
```**Set Up Environment Variables**
Create a new file named `.env` in the root of your project and add the following content:
```env
VITE_APPWRITE_URL=
VITE_APPWRITE_PROJECT_ID=
VITE_APPWRITE_DATABASE_ID=
VITE_APPWRITE_STORAGE_ID=
VITE_APPWRITE_USER_COLLECTION_ID=
VITE_APPWRITE_POST_COLLECTION_ID=
VITE_APPWRITE_SAVES_COLLECTION_ID=
```Replace the placeholder values with your actual Appwrite credentials. You can obtain these credentials by signing up on the [Appwrite website](https://appwrite.io/)
**Running the Project**
```bash
npm run dev
```Open [http://localhost:5173](http://localhost:5173) in your browser to view the project.
We welcome contributions! If you'd like to contribute to this project, please follow our [Contribution Guidelines](CONTRIBUTING.md)
## 🛡️ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## 🙂 Contact
For any questions or feedback, please contact me at [[email protected]](mailto:[email protected])
I hope you find Snapgram useful for your store management needs. Happy coding!