https://github.com/berrysauce/pinned
📌 A REST API to easily get pinned repositories from a GitHub user
https://github.com/berrysauce/pinned
api cloudflare-workers honojs pinned pinned-repos rest
Last synced: 6 months ago
JSON representation
📌 A REST API to easily get pinned repositories from a GitHub user
- Host: GitHub
- URL: https://github.com/berrysauce/pinned
- Owner: berrysauce
- License: mit
- Created: 2023-10-17T14:21:06.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-01-01T20:54:55.000Z (10 months ago)
- Last Synced: 2025-04-23T15:14:34.862Z (6 months ago)
- Topics: api, cloudflare-workers, honojs, pinned, pinned-repos, rest
- Language: TypeScript
- Homepage: https://pinned.berrysauce.dev
- Size: 16.6 KB
- Stars: 5
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# 📌 Pinned

Pinned is an API that returns pinned repositories for the requested username from GitHub. This is ideal for creating a "Pinned Repositories" section on your website.
```http
GET https://pinned.berrysauce.dev/get/username
```
Replace `username` with your GitHub username. Pinned will return the JSON in the following format:
```json
[
{
"author": "berrysauce",
"name": "whatdevsneed",
"description": "🧰 Discover new developer tools",
"language": "HTML",
"stars": 58,
"forks": 0
},
...
]
```
You can add `?pretty` at the end of your request to get a formatted response.
If Pinned runs into an error, it will return a response with a response code other than `200` and the following format:
```json
{
"detail": "Error parsing HTML"
}
```
> [!NOTE]
> This API has a 5 minute cache in place to reduce requests to the origin. With this said, it might take a moment for your pinned repositories to update.
## Development
Clone the repository, `cd` into it and run the following commands to install dependencies and run the code:
```
npm install
npm run dev
```
Pinned is deployed on [Cloudflare Workers](https://workers.cloudflare.com/). To deploy Pinned, run the following command:
```
npm run deploy
```