Find unassigned GitHub issues without pull requests
Streamline your path to open source contribution
Live App | Report Bug | Request Feature
IssueVista helps developers discover contribution-ready GitHub issues by filtering for:
- Open issues with no assignee
- Issues without linked pull requests (with token)
- Easy-to-start issues with zero comments
git clone https://github.com/VibeTensor/IssueVista.git
cd IssueVista
npm install
npm run dev- Paste any GitHub repo URL
- Click "Find Issues"
- Browse unassigned issues
Rate limit: 60 requests/hour
- Generate a token with
public_reposcope - Paste token in the app
- Get full PR filtering + 5000 requests/hour
Tokens are stored locally in your browser only, never sent to any server except GitHub's API.
| Feature | Without Token | With Token |
|---|---|---|
| Open issues | Yes | Yes |
| Unassigned filter | Yes | Yes |
| PR detection | No | Yes |
| Rate limit | 60/hr | 5000/hr |
| API | REST | GraphQL |
- Advanced filter syntax with autocomplete
- Language-based filtering with tag chips
- Difficulty scoring and complexity meter for each issue
- Sort by comments, date, or relevance
- Search history with quick access to previous queries
- Zero-comment highlighting for untouched issues
- Relative time display with freshness indicators ("Today", "3 days ago")
- Difficulty badges (beginner, intermediate, advanced)
- Repo stats panel with repository metadata
- Context menu with quick actions
- Export to Markdown, CSV, or plain text
- One-click copy of issue URLs
- Bookmarks for saving interesting issues
- Multiple theme presets with live preview
- Light and dark mode support
- Animated landing page with interactive elements
- Mobile-responsive design
- Scroll to top, loading progress indicators
- Framework: Astro 5.x
- UI Components: Svelte 5 (app) + React 19 (landing page)
- Styling: UnoCSS
- Animations: Framer Motion
- API: GitHub GraphQL + REST fallback
- Language: TypeScript (strict mode)
- Testing: Vitest + Playwright
- Hosting: Cloudflare Pages
IssueVista/
├── public/ # Static assets (favicon, images)
├── src/
│ ├── components/
│ │ ├── landing/ # Landing page (React): Hero, Features, CTA, etc.
│ │ │ └── ui/ # Animated UI primitives (aurora, orbiting circles)
│ │ ├── results/ # Issue display (Svelte): ResultsContainer, IssueCard, etc.
│ │ └── shared/ # Reusable components (Svelte): Header, Footer, ThemeSelector
│ ├── layouts/
│ │ ├── Layout.astro # Main application layout
│ │ └── LandingLayout.astro # Landing page layout
│ ├── lib/ # Utilities: GitHub API, filters, themes, search history
│ │ └── types/ # TypeScript type definitions
│ └── pages/
│ ├── index.astro # Landing page
│ └── app.astro # Application page
├── tests/ # Unit tests (Vitest)
│ └── e2e/ # E2E tests (Playwright)
├── eslint.config.js # ESLint flat config
├── uno.config.ts # UnoCSS configuration
└── tsconfig.json
| Command | Description |
|---|---|
npm run dev |
Start dev server |
npm run build |
Production build |
npm run lint |
Run ESLint |
npm run format:check |
Check Prettier formatting |
npm run test |
Run unit tests |
npm run test:e2e |
Run E2E tests |
Contributions welcome! This is a Hacktoberfest-friendly project.
- Fork the repository
- Create your branch (
git checkout -b feature/awesome) - Commit changes (
git commit -m 'Add awesome feature') - Push to branch (
git push origin feature/awesome) - Open a Pull Request
PRs get automatic preview deployments via Cloudflare Pages. Once merged to master, changes are automatically deployed to production.
See CONTRIBUTING.md for detailed guidelines.
- No analytics or tracking
- No server-side data collection
- Tokens stored in browser localStorage only
- Open source and auditable
IssueVista is an open source project by VibeTensor Private Limited.
If you find this helpful, please star the repo!