百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

social_media_app

> 前端框架
开源

使用 React JS 构建具有令人惊叹的 UI、本地移动体验、特殊技术栈、无限滚动功能和卓越性能的现代社交应用

1.5K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

使用 React JS 构建具有令人惊叹的 UI、本地移动体验、特殊技术栈、无限滚动功能和卓越性能的现代社交应用

A Social Media Application

## Table of Contents 1. [Introduction](#introduction) 2. ⚙️ [Tech Stack](#tech-stack) 3. [Features](#features) 4. [Quick Start](#quick-start) 5. ️ [Snippets](#snippets) 6. [Links](#links) 7. [More](#more) ## Tutorial This repository contains the code corresponding to an in-depth tutorial available on our YouTube channel, JavaScript Mastery. If you prefer visual learning, this is the perfect resource for you. Follow our tutorial to learn how to build projects like these step-by-step in a beginner-friendly manner! ## Introduction 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. If you're getting started and need assistance or face any bugs, join our active Discord community with over 27k+ members. It's a place where people help each other out. ## ⚙️ Tech Stack - React.js - Appwrite - React Query - TypeScript - Shadcn - Tailwind CSS ## 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 ## Quick Start 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/adrianhajdin/social_media_app.git cd social_media_app ``` **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 start ``` Open [http://localhost:3000](http://localhost:3000) in your browser to view the project. ## ️ Snippets constants.index.ts ``` … ``` globals.css ``` … ``` queryKeys.ts ```typescript export enum QUERY_KEYS { // AUTH KEYS CREATE_USER_ACCOUNT = "createUserAccount", // USER KEYS GET_CURRENT_USER = "getCurrentUser", GET_USERS = "getUsers", GET_USER_BY_ID = "getUserById", // POST KEYS GET_POSTS = "getPosts", GET_INFINITE_POSTS = "getInfinitePosts", GET_RECENT_POSTS = "getRecentPosts", GET_POST_BY_ID = "getPostById", GET_USER_POSTS = "getUserPosts", GET_FILE_PREVIEW = "getFilePreview", // SEARCH KEYS SEARCH_POSTS = "getSearchPosts", } ``` tailwind.config.js ``` … ``` types.index.ts ``` … ``` useDebounce.ts ``` … ``` utils.ts ``` … ``` ## Links Assets used in the project are [here](https://drive.google.com/file/d/13_7FofRAC3wARqPtAVPi53QNJJRd5RH_/view?usp=sharing) ## More **Advance your skills with Next.js 14 Pro Course** Enjoyed creating this project? Dive deeper into our PRO courses for a richer learning adventure. They're packed with detailed explanations, cool features, and exercises to boost your skills. Give it a go!

**Accelerate your professional journey with the Expert Training program** And if you're hungry for more than just a course and want to understand how we learn and tackle tech challenges, hop into our personalized masterclass. We cover best practices, different web skills, and offer mentorship to boost your confidence. Let's learn and grow together! #

Issues· 66 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

TypeScriptappwritereactreactjs

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类前端框架
定价开源

> 相关工具

R
React
用于构建用户界面的 JavaScript 库
V
Vue.js
渐进式 JavaScript 框架
N
Next.js
基于 React 的全栈 Web 框架