Mini-Twitter is a simplified clone of Twitter built with a React frontend and a Node.js backend. This project allows users to create accounts, post updates(working on the frontend part), follow(working on the frontend part) other users(working on the frontend part), and search people in the explore part(working on the frontend part).
- The project is live now at
https://twittermini.vercel.app/ - The backend server is now live! You can use it by only building the frontend.
- To access the backend API, point your requests to
https://mini-twitter-4o2f.onrender.com.
- User Authentication: Sign up, log in, and manage user sessions.
- Post Creation: Create and share posts.
- User Profiles: View and edit user profiles.
- Follow System: Follow and unfollow other users.
- Explore: Search for users and explore trending topics.
- Responsive Design: Fully responsive design for mobile and desktop users.
- Frontend: React, Styled Components
- Backend: Node.js, Express.js
- Database: MongoDB
- Others: Vite (for frontend build), GitHub for version control
- backend: Contains the Node.js server and API routes.
- frontend: Contains the React application.
Ensure you have the following installed on your local machine:
- Node.js (v14.x or later)
- npm (v6.x or later)
- MongoDB
git clone https://github.com/shaif-codes/Mini-Twitter.git
cd Mini-Twitter-
Navigate to the backend directory:
cd backend -
Install the required packages:
npm install
-
Create a
.envfile in the backend directory and add the following environment variables:MONGODB_URI=<your_mongodb_connection_string> JWT_SECRET=<your_jwt_secret> PORT=5000 FIREBASE_ACCOUNT_TYPE= FIREBASE_PROJECT_ID= FIREBASE_PRIVATE_KEY_ID= FIREBASE_PRIVATE_KEY= FIREBASE_CLIENT_EMAIL= FIREBASE_CLIENT_ID= FIREBASE_AUTH_URI= FIREBASE_TOKEN_URI= FIREBASE_AUTH_PROVIDER_X509_CERT_URL= FIREBASE_CLIENT_X509_CERT_URL= FIREBASE_UNIVERSE_DOMAIN=
-
Start the backend server:
npm start
The backend server should now be running on
http://localhost:5000.
-
Navigate to the frontend directory:
cd frontend -
Install the required packages:
npm install
-
Start the frontend development server:
npm run dev
The frontend server should now be running on
http://localhost:5173.
- Open your browser and navigate to
http://localhost:5173. - Sign up for a new account or log in with an existing one.
- Explore the app by creating posts, following other users.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Make your changes and commit them (
git commit -m 'Add some feature'). - Push to the branch (
git push origin feature-branch). - Create a new Pull Request.
This project is licensed under the MIT License. See the LICENSE file for more details.
If you have any questions, feel free to reach out via GitHub issues.
Thank you for checking out Mini-Twitter! We hope you find this project useful and informative.