bckt

Crates.iobckt
lib.rsbckt
version0.6.4
created_at2025-10-13 18:19:43.741649+00
updated_at2025-10-27 16:41:50.584446+00
descriptionbckt is an opinionated but flexible static site generator for blogs
homepagehttps://github.com/vrypan/bckt
repositoryhttps://github.com/vrypan/bckt
max_upload_size
id1880952
size1,154,953
Panagiotis Vryonis (vrypan)

documentation

README

social preview card

bckt

bckt (pronounced "bucket") is one more static site generator.

bckt is designed to blend different kinds of content into a single site, so you can mix long-form posts, link logs, photos, and other content -your personal content bucket :-)

It ships with a clean theme, incremental rebuilds, and a minimal toolchain so you can publish from Markdown or hand-written HTML without ceremony.

[!WARNING] bckt is expected to run in a trusted envioronment, where templates and content can be trusted (like your laptop or personal server). Using it to render third-party content (for example a public bckt-SaaS) is not recommended yet.

Highlights

  • Fast incremental renders with optional watch mode (bckt dev).
  • Theme-first workflow powered by MiniJinja templates (themes/bckt3).
  • Built-in client-side search index generation and custom template filters.
  • Straightforward YAML front matter with automatic tags and archive pages.

Pre-built binaries live on the releases page. You can also compile locally with cargo install --path ..

Demo

There's no demo, but you can check blog.vrypan.net built with bckt and a slightly modified default theme.

Also steve.photo is built using bckt and bckt-photo (see Extras).

Get Started

bckt init                     # scaffold posts/, templates/, skel/, bckt.yaml
# edit bckt.yaml
bckt-new --title "Hello"      # scaffold a new post (prompts for missing fields)
bckt render                   # generate html/
bckt dev --verbose            # preview with live reload

Deploy by publishing the generated html/ directory with any static host.

Documentation

Detailed guides live in docs/:

  • Posts organization, frontmatter, and .bcktignore for excluding directories
  • Theme structure (templates, pages, static assets)
  • Attachment metadata (file sizes and MIME types) in templates
  • Custom MiniJinja filters such as format_date
  • Client-side search integration and configuration tips

Contributing

cargo fmt
cargo clippy -- -D warnings
cargo test

Issues and pull requests are welcome.

Extras

bckt-fc

The companion bckt-fc command shows how different types of content can be integrated in a bckt blog in practice: run it to fetch a Farcaster cast (and its attached images and videos) and drop them straight into your blog, then render as usual (the default theme includes templates to render farcaster posts).

bckt-blog-template

bckt-blog-template is a ready-to-use GitHub repo template. Create a new repo and start blogging. No need to install anything.

bckt-mcp

bckt-mcp is an experimental MCP server you can run locally and helps you create posts from your favorite MCP-enabled AI tool. It takes care of frontmatter, filenames, and filepaths.

bckt-photo

bckt-photo: command line tool written that creates bckt blog posts from image files using their EXIF data. It comes with a theme designed for photography blogs.

Commit count: 0

cargo fmt