A modern web application built with React and Vite that allows you to browse GitHub repositories with a sleek user interface. Features include:
- 🌓 Light/Dark mode toggle
- 🔍 Smart search functionality
- 🔒 Private repository support with GitHub token
- 🔄 Sorting options (by date, stars)
- 🎯 Filter for private repositories
- 💅 Modern UI with shadcn/ui components
- Docker installed on your machine
- Git (to clone the repository)
To run the application in development mode with hot-reload:
# Build the image
docker build -t github-browser .
# Run development server
docker run -it \
-p 5173:5173 \
-v $(pwd)/src:/app/src \
github-browser
The application will be available at http://localhost:5173
. Changes to files in the src
directory will trigger hot-reload.
To build the application and get the static files:
# Run build command and output to local dist directory
docker run -it \
-v $(pwd)/src:/app/src \
-v $(pwd)/dist:/app/dist \
github-browser npm run build
The built files will be available in your local dist
directory.
- Access the application through your browser
- Navigate to a GitHub user's repositories by adding their username to the URL (e.g.,
/octocat
) - (Optional) Add your GitHub token to view private repositories
- Use the search bar to filter repositories
- Sort repositories by creation date or stars
- Toggle between light and dark mode as needed
- Use the "Private repos only" switch to filter private repositories
No environment variables are required for basic functionality. GitHub API is used without authentication for public repositories.
- The GitHub API has rate limiting for unauthenticated requests
- Adding a GitHub token increases the rate limit and enables private repository access
- Tokens are stored in the browser's local storage