The goal of this repository is to collect mechanical keyboard related projects (preferably Open Source).
View the pages on Keebfolio.netlify.app
Contributions are welcome!
To add content, create a new Markdown file in src/content/keyboards/[category]/.
You can copy an existing file as a template.
New Image Policy:
- You should use remote URLs (e.g.
https://github.com/.../image.jpg). - The build process will automatically download and optimize them for you.
- Clone the repository.
- Install dependencies:
npm install
- Start the development server:
Open http://localhost:4321 to view the site.
npm run dev
Themes are defined in src/data/themes.json. To add a new theme, add an entry:
"theme-id": {
"name": "Display Name",
"background": "#hexcolor",
"foreground": "#hexcolor",
"accent": "#hexcolor"
}The theme will automatically appear in the header dropdown.
- Cleanup Unused Images:
This deletes any downloaded images that are no longer referenced in your Markdown files.
npm run cleanup
Each page displays GitHub contributor avatars at the bottom. Contributors are fetched from the GitHub API during build and cached for 1 hour.
To increase the API rate limit (recommended for frequent builds):
- Create a GitHub Personal Access Token at https://github.com/settings/tokens (no special scopes needed)
- Copy
.env.exampleto.envand add your token:cp .env.example .env # Edit .env and add your GITHUB_TOKEN