https://github.com/notshrirang/gitrender
A vibe coded app around @karpathy's rendergit
https://github.com/notshrirang/gitrender
Last synced: 9 months ago
JSON representation
A vibe coded app around @karpathy's rendergit
- Host: GitHub
- URL: https://github.com/notshrirang/gitrender
- Owner: NotShrirang
- License: apache-2.0
- Created: 2025-08-20T15:17:13.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-20T15:46:28.000Z (10 months ago)
- Last Synced: 2025-08-20T17:48:32.033Z (10 months ago)
- Language: Python
- Homepage: https://gitrender.vercel.app
- Size: 40 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π GitRender
**Transform any GitHub repository into a single, searchable HTML page.**
> A vibe coded app around [@karpathy](https://github.com/karpathy)'s [rendergit](https://github.com/karpathy/rendergit)
[](https://opensource.org/licenses/Apache-2.0)
[](https://www.python.org/downloads/)
---
_Perfect for code review, exploration, and instant Ctrl+F across entire codebases_
**π― Simple Usage**: Replace `github.com` in any repo URL with `gitrender.vercel.app` and see the magic!
_Example: `https://github.com/user/repo` β `https://gitrender.vercel.app/user/repo`_
---
## β¨ What is GitRender?
GitRender flattens any GitHub repository into a **single, searchable HTML page** with beautiful syntax highlighting and intuitive navigation. No more clicking through complex file hierarchiesβjust pure, instant access to all the code you need.
### π― Perfect for:
- **Code Review**: See the entire codebase at once
- **Learning**: Explore open-source projects effortlessly
- **AI Analysis**: Export codebases in LLM-friendly format
- **Documentation**: Quick reference for project structure
- **Research**: Compare implementations across multiple files
---
## π Quick Start
### π Web Interface (Recommended)
Simply visit our hosted version and paste any GitHub repository URL:
**[π GitRender Web App](https://your-vercel-deployment.vercel.app)**
### π» Command Line Interface
#### Installation
```bash
# Clone the repository
git clone https://github.com/NotShrirang/GitRender.git
cd GitRender
# Or with uv (recommended)
uv venv .venv
source .venv/bin/activate # Linux/Mac
# .venv\Scripts\activate # Windows
uv pip install -r requirements.txt
```
## β¨ Features
### π¨ **Dual View Modes**
- **π€ Human View**: Beautiful interface with syntax highlighting and navigation
- **π€ LLM View**: Raw CXML format perfect for AI code analysis
### π **Smart Code Processing**
- **Syntax highlighting** for 200+ programming languages via Pygments
- **Markdown rendering** for documentation files
- **Smart filtering** automatically skips binaries and oversized files
- **File size optimization** with configurable limits
### π§ **Intuitive Navigation**
- **Directory tree** overview with expandable folders
- **Sidebar navigation** with file links and sizes
- **Jump-to-file** functionality
- **Search-friendly** - use Ctrl+F to find anything across all files
### π± **Modern Design**
- **Responsive layout** works on desktop, tablet, and mobile
- **Clean, minimal interface** focuses on the code
- **Fast loading** with optimized HTML output
- **Accessible** design following web standards
---
## π§ Technical Details
### Architecture
- **Backend**: Flask web application
- **Frontend**: Responsive HTML with modern CSS/JS
- **Deployment**: Optimized for Vercel serverless functions
- **Code Processing**: Python with Pygments and Markdown libraries
### File Processing
- Supports text files up to 50KB by default (configurable)
- Automatically detects and skips binary files
- Processes common code files, documentation, and configuration files
- Maintains original file structure and relationships
### Performance
- Efficient temporary file handling
- Optimized HTML generation
- Smart caching for repeated requests
- Maximum 60-second processing time on Vercel
---
## π οΈ Development
### Project Structure
```
GitRender/
βββ app.py # Flask web application
βββ index.py # Vercel entry point
βββ requirements.txt # Python dependencies
βββ vercel.json # Vercel deployment configuration
βββ core/ # Core functionality
β βββ github_api.py # GitHub API integration
β βββ navigation.py # Navigation utilities
β βββ repo_to_single_page.py # Main rendering logic
β βββ templates.py # HTML templates
β βββ utils.py # Utility functions
βββ README.md # This file
```
### Contributing
We welcome contributions! Here's how you can help:
1. **Fork** the repository
2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)
3. **Commit** your changes (`git commit -m 'Add amazing feature'`)
4. **Push** to the branch (`git push origin feature/amazing-feature`)
5. **Open** a Pull Request
### Issues and Support
- π [Report bugs](https://github.com/NotShrirang/GitRender/issues)
- π‘ [Request features](https://github.com/NotShrirang/GitRender/issues)
- π¬ [Join discussions](https://github.com/NotShrirang/GitRender/discussions)
---
## π License
This project is licensed under the **Apache License 2.0** - see the [LICENSE](LICENSE) file for details.
---
## π Acknowledgments
- **Original concept and implementation** by [@karpathy](https://github.com/karpathy) - this project is based on his excellent [rendergit](https://github.com/karpathy/rendergit) tool
- Inspired by the need for better code exploration tools
- Built with [Pygments](https://pygments.org/) for syntax highlighting
- Uses [Python-Markdown](https://python-markdown.github.io/) for documentation rendering
- Deployed on [Vercel](https://vercel.com/) for fast, global access
---
**Made with β€οΈ for developers who love exploring code**
[β Star this repo](https://github.com/NotShrirang/GitRender) if GitRender helped you!