{"id":31370114,"url":"https://github.com/notshrirang/gitrender","last_synced_at":"2025-09-27T18:54:51.003Z","repository":{"id":310856541,"uuid":"1041498140","full_name":"NotShrirang/GitRender","owner":"NotShrirang","description":"A vibe coded app around @karpathy's rendergit","archived":false,"fork":false,"pushed_at":"2025-08-20T15:46:28.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-20T17:48:32.033Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://gitrender.vercel.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NotShrirang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-20T15:17:13.000Z","updated_at":"2025-08-20T15:47:16.000Z","dependencies_parsed_at":"2025-08-20T17:48:37.542Z","dependency_job_id":"df5b1384-785e-4bf5-ae69-8aaf6e02755d","html_url":"https://github.com/NotShrirang/GitRender","commit_stats":null,"previous_names":["notshrirang/gitrender"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/NotShrirang/GitRender","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotShrirang%2FGitRender","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotShrirang%2FGitRender/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotShrirang%2FGitRender/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotShrirang%2FGitRender/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NotShrirang","download_url":"https://codeload.github.com/NotShrirang/GitRender/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotShrirang%2FGitRender/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277275902,"owners_count":25791106,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-27T02:00:08.978Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-09-27T18:54:50.034Z","updated_at":"2025-09-27T18:54:50.995Z","avatar_url":"https://github.com/NotShrirang.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 GitRender\n\n**Transform any GitHub repository into a single, searchable HTML page.**\n\n\u003e A vibe coded app around [@karpathy](https://github.com/karpathy)'s [rendergit](https://github.com/karpathy/rendergit)\n\n\u003cdiv align=\"center\"\u003e\n\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\n\n---\n\n_Perfect for code review, exploration, and instant Ctrl+F across entire codebases_\n\n**🎯 Simple Usage**: Replace `github.com` in any repo URL with `gitrender.vercel.app` and see the magic!\n\n_Example: `https://github.com/user/repo` → `https://gitrender.vercel.app/user/repo`_\n\n\u003c/div\u003e\n\n---\n\n## ✨ What is GitRender?\n\nGitRender 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.\n\n### 🎯 Perfect for:\n\n- **Code Review**: See the entire codebase at once\n- **Learning**: Explore open-source projects effortlessly\n- **AI Analysis**: Export codebases in LLM-friendly format\n- **Documentation**: Quick reference for project structure\n- **Research**: Compare implementations across multiple files\n\n---\n\n## 🚀 Quick Start\n\n### 🌐 Web Interface (Recommended)\n\nSimply visit our hosted version and paste any GitHub repository URL:\n\n**[🌐 GitRender Web App](https://your-vercel-deployment.vercel.app)**\n\n### 💻 Command Line Interface\n\n#### Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/NotShrirang/GitRender.git\ncd GitRender\n\n# Or with uv (recommended)\nuv venv .venv\nsource .venv/bin/activate  # Linux/Mac\n# .venv\\Scripts\\activate   # Windows\nuv pip install -r requirements.txt\n```\n\n## ✨ Features\n\n### 🎨 **Dual View Modes**\n\n- **👤 Human View**: Beautiful interface with syntax highlighting and navigation\n- **🤖 LLM View**: Raw CXML format perfect for AI code analysis\n\n### 🔍 **Smart Code Processing**\n\n- **Syntax highlighting** for 200+ programming languages via Pygments\n- **Markdown rendering** for documentation files\n- **Smart filtering** automatically skips binaries and oversized files\n- **File size optimization** with configurable limits\n\n### 🧭 **Intuitive Navigation**\n\n- **Directory tree** overview with expandable folders\n- **Sidebar navigation** with file links and sizes\n- **Jump-to-file** functionality\n- **Search-friendly** - use Ctrl+F to find anything across all files\n\n### 📱 **Modern Design**\n\n- **Responsive layout** works on desktop, tablet, and mobile\n- **Clean, minimal interface** focuses on the code\n- **Fast loading** with optimized HTML output\n- **Accessible** design following web standards\n\n---\n\n## 🔧 Technical Details\n\n### Architecture\n\n- **Backend**: Flask web application\n- **Frontend**: Responsive HTML with modern CSS/JS\n- **Deployment**: Optimized for Vercel serverless functions\n- **Code Processing**: Python with Pygments and Markdown libraries\n\n### File Processing\n\n- Supports text files up to 50KB by default (configurable)\n- Automatically detects and skips binary files\n- Processes common code files, documentation, and configuration files\n- Maintains original file structure and relationships\n\n### Performance\n\n- Efficient temporary file handling\n- Optimized HTML generation\n- Smart caching for repeated requests\n- Maximum 60-second processing time on Vercel\n\n---\n\n## 🛠️ Development\n\n### Project Structure\n\n```\nGitRender/\n├── app.py              # Flask web application\n├── index.py            # Vercel entry point\n├── requirements.txt    # Python dependencies\n├── vercel.json        # Vercel deployment configuration\n├── core/              # Core functionality\n│   ├── github_api.py      # GitHub API integration\n│   ├── navigation.py      # Navigation utilities\n│   ├── repo_to_single_page.py  # Main rendering logic\n│   ├── templates.py       # HTML templates\n│   └── utils.py           # Utility functions\n└── README.md          # This file\n```\n\n### Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork** the repository\n2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)\n3. **Commit** your changes (`git commit -m 'Add amazing feature'`)\n4. **Push** to the branch (`git push origin feature/amazing-feature`)\n5. **Open** a Pull Request\n\n### Issues and Support\n\n- 🐛 [Report bugs](https://github.com/NotShrirang/GitRender/issues)\n- 💡 [Request features](https://github.com/NotShrirang/GitRender/issues)\n- 💬 [Join discussions](https://github.com/NotShrirang/GitRender/discussions)\n\n---\n\n## 📄 License\n\nThis project is licensed under the **Apache License 2.0** - see the [LICENSE](LICENSE) file for details.\n\n---\n\n## 🙏 Acknowledgments\n\n- **Original concept and implementation** by [@karpathy](https://github.com/karpathy) - this project is based on his excellent [rendergit](https://github.com/karpathy/rendergit) tool\n- Inspired by the need for better code exploration tools\n- Built with [Pygments](https://pygments.org/) for syntax highlighting\n- Uses [Python-Markdown](https://python-markdown.github.io/) for documentation rendering\n- Deployed on [Vercel](https://vercel.com/) for fast, global access\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**Made with ❤️ for developers who love exploring code**\n\n[⭐ Star this repo](https://github.com/NotShrirang/GitRender) if GitRender helped you!\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotshrirang%2Fgitrender","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnotshrirang%2Fgitrender","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotshrirang%2Fgitrender/lists"}