Track and monitor your GitHub starred repositories with star count analytics, README viewing, and similar repo recommendations.
- ⭐ Star Tracking: Monitor star count changes over time
- 📄 README Viewer: Quick access to project documentation
- 🔍 Similar Repos: Discover related projects based on your interests
- 📊 Trending: Stay updated with popular repositories
- 👥 Following Feed: See what repos your followed users are starring
- 🌙 Dark Mode: Built-in dark/light theme support
- 🌍 i18n Ready: Multi-language support (EN/TR)
- Frontend: React 19 + Vite + TypeScript
- Styling: Tailwind CSS v4
- State Management: Zustand
- Database: IndexedDB (Dexie.js)
- Routing: React Router v7
- HTTP Client: Axios
- i18n: react-i18next
- Node.js 18+
- npm or yarn
- A GitHub OAuth App (see below)
- Go to https://github.com/settings/developers
- Click "New OAuth App"
- Fill in:
- Application name: GitHub Star Tracker
- Homepage URL: http://localhost:5173
- Authorization callback URL: http://localhost:5173
- Copy your Client ID and Client Secret
- Clone the repository
- Copy
.env.exampleto.envand fill in your GitHub credentials:
cp .env.example .env- Install dependencies:
npm install- Run the development server:
# Frontend
npm run dev
# Backend (optional, for OAuth callback)
npm run serverVITE_GITHUB_CLIENT_ID=your_client_id_here
VITE_GITHUB_REDIRECT_URI=http://localhost:5173
# Server (optional)
VITE_GITHUB_CLIENT_SECRET=your_client_secret_herenpm run dev- Start Vite development servernpm run server- Start Express OAuth servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLint
src/
├── components/ # React components
│ ├── auth/ # Authentication components
│ ├── repo/ # Repository-related components
│ ├── dashboard/ # Dashboard components
│ ├── common/ # Shared UI components
│ └── layout/ # Layout components
├── pages/ # Page components
├── hooks/ # Custom React hooks
├── stores/ # Zustand state stores
├── services/ # API and database services
├── utils/ # Utility functions
├── types/ # TypeScript type definitions
└── i18n/ # Internationalization
For development, you have two options:
-
Client-side only: Use the GitHub login button which redirects to GitHub and back with a code. The token is stored in memory.
-
With backend server: Run
npm run serverfor proper OAuth token exchange.
MIT