berrysauce / pinned

📌 A REST API to easily get pinned repositories from a GitHub user
https://pinned.berrysauce.dev
MIT License
2 stars 0 forks source link
api cloudflare-workers honojs pinned pinned-repos rest

📌 Pinned

Uptime

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.

GET  https://pinned.berrysauce.dev/get/username

Replace username with your GitHub username. Pinned will return the JSON in the following format:

[
    { 
        "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:

{
    "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. To deploy Pinned, run the following command:

npm run deploy