Welcome to KityHub, your ultimate GitHub Profile Explorer! KityHub is a powerful application designed to help you explore GitHub user profiles and repositories effortlessly. Powered by the MERN stack (MongoDB, Express.js, React.js, Node.js) and styled with the elegance of Tailwind CSS, KityHub integrates seamlessly with the GitHub API to provide a smooth and intuitive user experience.
- User Authentication and Authorization: 🔒 Utilizing Passport.js with GitHub authentication for secure access.
- GitHub API Integration: 🚀 Fetch GitHub user profiles and repositories in real-time, ensuring up-to-date information.
- Search Functionality: 🔍 Quickly find GitHub users by their username with the intuitive search feature.
- Sorting Repositories: 📊 Sort repositories based on various criteria for easy navigation and exploration.
- Cloning Repository URLs: 📋 Copy GitHub repository URLs directly from the application for convenient access.
- Smooth UI for User Experience: 🎨 Enjoy a sleek and seamless interface designed to enhance user interaction and satisfaction.
- Loading State: ⏳ Enhance user experience with a loading state while fetching data, ensuring smooth transitions.
- Likes: ❤️ Keep track of your favorite profiles and repositories with the ability to like and retrieve them easily.
- Error Handling: 🐞 Robust error handling mechanisms on both server and client sides for seamless operation.
- 🛠️ Frontend: React.js with Tailwind CSS
- 🖥️ Backend: Node.js with Express.js
- 🗃️ Database: MongoDB
- 🔑 Authentication: Passport.js (GitHub Auth)
- Clone the Repository:
git clone https://github.com/runtime-terror-63/kityhub.git - Install Dependencies:
cd kityhub && npm install - Set Up Environment Variables: Configure environment variables including GitHub API key, MongoDB URI, etc.
- Run the Application:
- ⚙️ Frontend:
npm run dev - ⚙️ Backend:
npm start
- ⚙️ Frontend:
To start the application, follow these steps:
- Make sure you have all the necessary dependencies installed.
- Set up your environment variables by creating a
.envfile in the root directory of your project. Copy and paste the following content into the.envfile:
# .env file setup
PORT=5000
MONGO_URI=YOUR_MONGODB_URI
GITHUB_API_KEY=YOUR_GITHUB_API_KEY
GITHUB_CLIENT_ID=YOUR_GITHUB_CLIENT_ID
GITHUB_CLIENT_SECRET=YOUR_GITHUB_CLIENT_SECRET
CLIENT_BASE_URL=YOUR_CLIENT_BASE_URL
# Build the app
npm run build
# Start the app
npm start
- 🛠️ Authentication: Log in securely using your GitHub credentials via Passport.js.
- 🔍 Profile Exploration: Discover GitHub users and dive into their profiles and repositories effortlessly.
- 📊 Sorting and Filtering: Sort repositories based on various criteria to find exactly what you're looking for.
- 📋 Cloning Repository URLs: Copy repository URLs directly from the application for easy access.
- ❤️ Likes: Favorite profiles and repositories with ease to keep track of your preferences.
- 🐞 Error Handling: Detailed error messages ensure smooth troubleshooting and operation.
We value your feedback and welcome contributions! If you have any suggestions or encounter issues, please don't hesitate to open an issue or submit a pull request.
KityHub is licensed under the MIT License. See the LICENSE file for details.