Download any GitHub directory as a zip — instantly.
gitfold.cc · Docs · API
Change github.com → gitfold.cc in any GitHub tree URL and press Enter:
https://github.com/anthropics/claude-code/tree/main/plugins/feature-dev
↓
https://gitfold.cc/anthropics/claude-code/tree/main/plugins/feature-dev
That's it. Your browser downloads the zip immediately.
Web UI — Paste a GitHub URL at gitfold.cc
API
curl -L "https://api.gitfold.cc/v1/download?url=https://github.com/anthropics/claude-code/tree/main/plugins/feature-dev" \
-o feature-dev.zip
# tar.gz format
curl -L "https://api.gitfold.cc/v1/download?url=...&format=tar.gz" -o archive.tar.gzCLI
npx gitfold.cc https://github.com/anthropics/claude-code/tree/main/plugins/feature-dev
npx gitfold.cc <url> --format tar.gz
npx gitfold.cc <url> --info
npx gitfold.cc <url> --token ghp_xxxxgitfold/
├── shared/ # URL parser & types (used by both web and worker)
├── web/ # Static frontend → gitfold.cc (Cloudflare Pages)
├── worker/ # REST API backend → api.gitfold.cc (Cloudflare Workers)
│ └── src/
│ ├── routes/ # api.ts
│ ├── services/ # github, zip, tar, cache
│ └── middleware/ # security
├── chrome-extension/ # Browser extension
├── action/ # GitHub Action
├── docs/ # llms.txt, llms-full.txt
└── cli/ # npx gitfold.cc
# Install dependencies
pnpm install
# Run worker API locally (port 8787)
pnpm dev:worker
# Serve frontend locally
pnpm dev:webCopy worker/.dev.vars.example → worker/.dev.vars:
GITHUB_TOKEN=ghp_... # optional system token# Create infrastructure, then put the namespace id in worker/wrangler.toml
wrangler kv namespace create GITFOLD_CACHE
wrangler r2 bucket create gitfold-cache
# Optional shared fallback token for anonymous requests
wrangler secret put GITHUB_TOKEN
# Deploy
pnpm deploy:workerThe frontend deploys to Cloudflare Pages on git push.
GET https://gitfold.cc/llms.txt
GET https://gitfold.cc/llms-full.txt
GitFold is designed to be AI-friendly. See llms.txt for machine-readable docs.
MIT