https://github.com/privatenumber/github-cdn
🛰 Github CDN Server
https://github.com/privatenumber/github-cdn
api cdn github github-api server
Last synced: 8 months ago
JSON representation
🛰 Github CDN Server
- Host: GitHub
- URL: https://github.com/privatenumber/github-cdn
- Owner: privatenumber
- License: mit
- Created: 2019-12-23T06:17:01.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-15T02:48:42.000Z (almost 3 years ago)
- Last Synced: 2025-03-17T18:53:50.762Z (8 months ago)
- Topics: api, cdn, github, github-api, server
- Language: JavaScript
- Homepage: https://github-cdn.now.sh
- Size: 298 KB
- Stars: 50
- Watchers: 3
- Forks: 9
- Open Issues: 2
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# 🛰 Github CDN [](https://GitHub.com/privatenumber/github-cdn)
[Github CDN](https://github-cdn.now.sh) is [UNPKG](https://unpkg.com/) for Github — an unofficial content delivery network for repo assets on Github.
## ⭐️ Features
- Fetch repo meta-data: branches, tags, and PRs
- Serve repo and Gist files
- Instant access to new changes pushed to Github *
- Great for quick prototyping / development
- Includes [npm excluded files](https://docs.npmjs.com/using-npm/developers.html#keeping-files-out-of-your-package)
- [Node API](https://github.com/privatenumber/github-cdn/blob/master/readme_node-api.md) for compatibility with Github Enterprise
_* Unless the request fails due to network failure or rate-limiting_
## 💁♀️ Endpoints
- `/:owner/:repo`
- Get the default branch and all refs (branches, tags, and PRs)
- eg. [`/vuejs/vue`](https://github-cdn.now.sh/vuejs/vue) to retrieve meta data on [vuejs/vue](https://github.com/vuejs/vue)
Example output
```json5
{
"default_branch": "master",
"refs": {
"heads": { ... },
"tags": { ... },
"pull": { ... }
}
}
```
- `/:owner/:repo/:ref`
- Resolve repo ref if semver. Redirects to root of repo ref
- eg. [`/vuejs/vue/master`](https://github-cdn.now.sh/vuejs/vue/master)
- eg. [`/vuejs/vue/^2.0.0`](https://github-cdn.now.sh/vuejs/vue/^2.0.0)
- eg. [`/vuejs/vue/latest`](https://github-cdn.now.sh/vuejs/vue/latest)
- `/:owner/:repo/:ref?badge`
- Resolves the ref and redirects to [Badgen](https://badgen.net)
- eg. `/vuejs/vue/latest?badge` 
- `/:owner/:repo/:ref/:path`
- Get a file or list directory in a repo ref
- eg. [`/vuejs/vue/v2.6.11/dist/`](https://github-cdn.now.sh/vuejs/vue/v2.6.11/dist/)
- eg. [`/vuejs/vue/v2.6.11/dist/vue.min.js`](https://github-cdn.now.sh/vuejs/vue/v2.6.11/dist/vue.min.js)
- `/gist/:gist-id`
- Get meta-data on a Gist: url, owner, created/updated date, and files
- eg. [`/gist/feff40b0a522f0c41c4eff0b77ea1d47`](https://github-cdn.now.sh/gist/feff40b0a522f0c41c4eff0b77ea1d47)
- `/gist/:gist-id/:path`
- Get a file from a Gist
- eg. [`/gist/feff40b0a522f0c41c4eff0b77ea1d47/tulip.jpg`](https://github-cdn.now.sh/gist/feff40b0a522f0c41c4eff0b77ea1d47/tulip.jpg)
- `/ratelimit`
- See the rate limit quota available on the Github API
- With rate limiting, **Github CDN is not a production-ready solution** to hosting code
### 🔑 Setting a custom token (for rate-limiting & private repos)
Use a [Personal access token (PAT)](https://github.com/settings/tokens) to access your private repos and to use your [rate limit quota](https://developer.github.com/v3/#rate-limiting).
_This token is only stored in your browser as a cookie._
---
Built and maintained by [@privatenumber](https://github.com/privatenumber) [](https://github.com/privatenumber?tab=followers) and powered by [Vercel](https://vercel.com) ❤️