Skim GitHub release notes in a single glance.
RepoScoop solves the pain of navigating releases in large repositories—especially monorepos. Paste any GitHub repo URL and get an instant, collapsible view of each package’s versions alongside their release notes, grouped by package name for quick scanning.
- Single‑input workflow – one textbox, one button.
- Smart grouping – releases organized by detected package name.
- Collapsible drill‑down – expand a package to see version tags and full release bodies.
- Clean UI – built with daisyUI for modern, accessible components and consistent theming.
- Fast performance – client-side processing with efficient caching.
- Mobile-friendly – responsive design works on all devices.
Live Demo (Coming soon)
Try it with these example repositories:
- clerk/javascript - Authentication library with multiple packages
- vercel/next.js - React framework with many releases
- sveltejs/kit - Svelte application framework
- Node.js 18.x or later
- bun (recommended), npm, pnpm, or yarn
-
Clone the repository
git clone https://github.com/aqeelat/reposcoop.git cd reposcoop
-
Install dependencies
bun install # or npm install # or pnpm install # or yarn install
Start the development server:
bun run dev
# or start the server and open the app in a new browser tab
bun run dev -- --open
RepoScoop uses Vitest for unit tests.
# Run all tests
bun test
# Run only unit tests
bun run test:unit
Create a production build:
bun run build
# Preview the production build
bun run preview
RepoScoop is configured to deploy to Cloudflare Pages using the @sveltejs/adapter-cloudflare
adapter. No additional configuration is needed for basic deployment.
RepoScoop supports Umami analytics for tracking website usage. To enable analytics:
-
Copy the example environment file:
cp .env.example .env
-
Configure your Umami settings in
.env
:# Required: Your Umami website ID PUBLIC_UMAMI_WEBSITE_ID=your-website-id-here # Required: URL to your Umami script PUBLIC_UMAMI_SCRIPT_URL=https://your-umami-instance.com/script.js
-
Rebuild and redeploy the application
The analytics will only load when both PUBLIC_UMAMI_WEBSITE_ID
and PUBLIC_UMAMI_SCRIPT_URL
are configured. If these variables are not set, no analytics scripts will be loaded.
reposcoop/
├── src/
│ ├── lib/ # Library code
│ │ ├── components/ # UI components
│ │ └── utils/ # Utility functions
│ ├── routes/ # SvelteKit routes
│ │ └── r/ # Repository view pages
│ └── app.css # Global styles
├── docs/
│ └── architecture/ # Architecture evaluations/ADRs
└── static/ # Static assets
- GraphQL Evaluation: docs/architecture/graphql-evaluation.md
- Input: User enters a GitHub repository URL
- Fetching: Application fetches release data from GitHub API
- Processing: Releases are grouped by package name using pattern detection
- Display: Grouped releases are displayed in a collapsible interface
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.