Instaclone is a photo-sharing social platform inspired by Instagram. It allows users to share their favorite moments, follow others, and engage with content through likes and comments. This project is built with React and demonstrates the implementation of key social media features.
- Photo Sharing: Users can upload and display their favorite images.
- User Profiles: View personalized user profiles with photo grids.
- Follow System: Follow other users to see their posts in your feed.
- Likes and Comments: Interact with posts through likes and comments.
- Search Functionality: Find users by their usernames or full names.
- Frontend: React with modern hooks and components.
- Styling: SASS for styling with responsive design.
- State Management: Context API for managing global state.
- Backend API: Django Rest Framework (DRF) for handling user authentication and data.
- Database: PostgreSQL for storing user data, posts, and interactions.
- Image Hosting: Cloudinary for managing and hosting images.
- Authentication: JWT-based authentication for secure login and session management.
Clone the repository:
git clone https://github.com/bluediu/instaclone-frontend.git
Navigate to the project directory:
cd instacloneInstall dependencies:
yarn install
Start the development server:
yarn dev
Configure the backend API and database connection as per your requirements.
src/ โโโ apps/ โ โโโ Posts/ # Module for managing posts โ โโโ UI/ # Shared user interface components โ โโโ Users/ # Module for user management (authentication, profiles, etc.) โ โโโ api/ # API services specific to users โ โโโ components/ # Reusable components within the Users module โ โโโ pages/ # Pages related to user functionalities (profiles, settings, etc.) โ โโโ hooks/ # Custom hooks related to user logic โ โโโ context/ # Context providers for user-related state โ โโโ interfaces/ # TypeScript interfaces for user-related types โ โโโ services/ # Business logic and services for users โโโ constants/ # Application-wide constants โโโ context/ # Global state management using React Context โโโ hooks/ # Reusable custom hooks โโโ interfaces/ # Global TypeScript interface definitions โโโ layouts/ # Layout components like headers, footers, etc. โโโ routes/ # Route definitions and navigation structure โโโ sass/ # Global and modular SCSS styles โโโ shared/ # Components shared across different modules โโโ types/ # Global TypeScript type definitions โโโ utils/ # Utility functions and helpers https://github.com/bluediu/instaclone-backend
This project is licensed under the MIT License. Feel free to use, modify, and distribute it.