GitMatch is a swipe-based discovery tool designed for developers who are tired of endless scrolling and want to find projects that actually matter. Whether you're looking for your next side project, a library to use at work, or an open-source repo to contribute to, GitMatch surfaces the best of GitHub through an intuitive Tinder-like interface.
- 🔥 Swipe-to-Discover: Quickly filter through thousands of repositories with simple gestures.
- 🧠 Personalized Feed: Our recommendation engine learns from your 'Likes' and 'Passes' to surface high-priority projects.
- 🔐 Secure Authentication: Seamless login via GitHub and Google.
- 📂 Stash Collections: Save your favorite discoveries into custom collections for later.
- ⚡ High Performance: Built with React 19 and Vite for near-instant interactions.
- 🎨 Modern UI: Fluid animations powered by Motion (React) and styled with Tailwind CSS 4.
- Framework: React 19
- Styling: Tailwind CSS 4
- State & DB: Firebase (Firestore & Auth)
- Animations: Motion
- Icons: Lucide React
- AI Integration: Google Gemini API (for smart tagging and recommendations)
- Node.js (v22+)
- npm
-
Clone the repository:
git clone https://github.com/sharfuddin-shawon/GitMatch.git cd GitMatch -
Install dependencies:
make install # or npm install -
Set up Environment Variables: Create a
.envfile based on.env.example:cp .env.example .env
-
Run development server:
make dev # or npm run dev
We use a Makefile to manage quality gates:
make lint: Run ESLint.make typecheck: Run TypeScript compiler check.make coverage: Run Vitest with coverage report.make build: Verify production build.
(Coming Soon: Add a high-quality GIF of the swiping interaction here!)
Contributions are welcome! If you'd like to improve GitMatch, please follow these steps:
- Fork the Project.
- Create your Feature Branch (
git checkout -b feature/AmazingFeature). - Commit your Changes (
git commit -m 'Add some AmazingFeature'). - Push to the Branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ for the Open Source Community