A React application that provides a user-friendly interface for exploring and analyzing GitHub repositories using AI-powered insights.
- Search for GitHub repositories by keywords
- View detailed repository information including:
- Languages used
- Open issues and pull requests
- Discussion topics
- Dependencies
- AI-powered summaries of repositories
- Interactive analysis of repository issues, PRs, and discussions
- Error analysis tool to help understand error messages in the context of the repository
- React 19
- React Router v7
- Axios for API requests
- React Markdown for rendering README content
- Vite for fast development and optimized builds
- Node.js (latest LTS version recommended)
- Backend API service running (see the backend README for setup)
- Clone the repository
- Install dependencies:
npm install - Create a
.envfile with the following variables:Adjust the URL if your backend is running on a different port.VITE_API_URL=http://localhost:5001/api
Run the development server:
npm run dev
This will start the application on http://localhost:5173 (default Vite port).
Build the application for production:
npm run build
Preview the production build:
npm run preview
src/: Source codecomponents/: Reusable UI componentspages/: Main application pagesSearchPage.jsx: Repository search interfaceAnalysisPage.jsx: Detailed repository analysis
services/: API client and servicesstyles/: CSS stylesheetsassets/: Static resourcesApp.jsx: Main application component
- SearchBar: Allows users to search for repositories
- ResultsList: Displays search results
- AnalysisPage: Main page for detailed repository analysis
- OverallSummary: Displays AI-generated repository overview
- IssuesList/PullsList/DiscussionsList: Interactive components to view repository activity
- ErrorAnalyzer: Tool to analyze error messages in the context of the repository
The application communicates with the backend API using the apiClient.js service, which provides functions for:
- Searching repositories
- Fetching repository analysis data
- Generating AI summaries
- Analyzing specific items (issues, PRs)
- Processing error messages
- Responsive design for mobile and desktop
- Loading states with spinners
- Error handling with user-friendly messages
- Tabbed interface for repository activity
- Markdown rendering for repository content