MyGithub is a web application that brings the power of GitHub to your fingertips. Whether youโre a developer, a curious learner, or a seasoned open-source enthusiast, MyGithub offers a seamless experience for exploring user profiles, repositories, and more.
- Secure login using Passport.js with GitHub Auth.
- User sessions and tokens handled behind the scenes.
- Fetch user profiles and repositories directly from GitHub.
- Real-time data sync with GitHub.
- Filter repositories right on the client side.
- Find relevant repos faster.
- Comprehensive error handling on both server and client sides.
- No more mysterious bugs!
- Like profiles, sign up, and log in, see the users along with date who liked ur profile.
- Clone repositories.
- Explore popular repos by username.
- Explore popular repos of Popular Languages
- Real-time chat functionality for connecting with fellow GitHub users.
- Send messages, share ideas, and share screenshots.
- React (with hooks)
- Tailwind CSS for styling
- Node.js with Express.js
- MongoDB for data storage
- Passport.js for Authentication
- Socket.io for real-time communication
- Multer for file uploads
Check out MyGithub here: MyGithub App
- Clone this repository:
git clone https://github.com/yourusername/mygithub.git
- Install dependencies:
cd MyGithub
npm install
cd frontend
npm i
cd ..
cd backend
npm install
-
Set up environment variables (e.g. GitHub API key, MongoDB URI, CLient Base URL) check .env.sample file for reference.
-
Run the app:
npm start
(U may redirected automatically to the actual deployed site, make changes at the main.jsx file to run this in local development settings)
Contributions are welcome! Feel free to open issues or submit pull requests.
This project is licensed under the MIT License. See the LICENSE file for details.
Give a star to this repo โญ