- Rust 97.3%
- JavaScript 1.6%
- Shell 0.5%
- PowerShell 0.3%
- HTML 0.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .cargo | ||
| .forgejo/workflows | ||
| .github/readme | ||
| crates | ||
| descriptions | ||
| examples | ||
| explanations | ||
| licences | ||
| src | ||
| tests | ||
| tools | ||
| .gitattributes | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CHANGELOG.md | ||
| CONTRIBUTING.md | ||
| crates-io.md | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| README.md | ||
| SECURITY.md | ||
| THIRD-PARTY-GRAMMARS.md | ||
| THIRD-PARTY.md | ||
A friendlier static site generator.
Get started · Install · Documentation · Problems explained · Changes
Statac makes a website from a folder of Markdown. You write pages in
Markdown, choose how they look with templates, and run statac build. It
writes a site of plain files, ready to put on any web host. Statac adds
no JavaScript to a page unless you ask it to.
It is one program in one file, with no plugins and nothing else to install beside it.
It explains itself
When something in the site is wrong, Statac shows you the file, the line
and the exact text, says what it did or why it stopped, and links to a
page about that kind of problem. statac explain broken-link shows the
same explanation in the terminal.
While statac serve runs, the
debug panel on every page shows the
problems, each name a template can write, what it holds on that page and
where its value came from.
What you get
- Broken links caught. Statac checks every link within your site before anything is published, including the heading it points to.
- Images handled. Write an ordinary Markdown image. Readers get it in several sizes, as AVIF with a JPEG fallback.
- Search built in. Once you add a
search box to your site, Statac writes a
search index at each build, and the box finds pages as the reader
types, with nothing outside your site needed.
statac searchgives the same results in the terminal. - Social cards. Statac draws a social card for each page, from a layout you set, in fonts and over a background of your own.
- Bring your site with you.
statac importbrings a Hugo, Jekyll, Zola or Eleventy site across, and lists anything it couldn't bring. See Arriving from another tool. - One program. Sass, code colours, feeds and a sitemap need no plugin: Statac does each once you ask. The stylesheet that colours code and the templates for feeds and a sitemap are your own, and the docs have them ready to copy.
And the rest: tags and series, several languages, webmentions, a preview that reloads as you save, and nothing published unless the whole build succeeds.
Installing
On a Mac or Linux:
curl -fsSL https://get.statac.dev | sh
On a Mac, with Homebrew:
brew tap statac/statac https://git.statac.dev/statac/homebrew-statac
brew install statac/statac/statac
On Windows, in PowerShell:
irm https://get.statac.dev/install.ps1 | iex
On Windows, with Scoop:
scoop bucket add statac https://git.statac.dev/statac/scoop-statac
scoop install statac
For another way to install, each release has a package for each kind of machine. Installing says which to take and how to check it.
With Cargo, from crates.io:
cargo install --locked statac
Cargo builds Statac from its source, which needs Rust 1.99 or later, a C and C++ compiler, CMake and Perl, and NASM on a machine with an Intel or AMD processor.
A first site
statac new site-1
cd site-1
statac serve
statac new asks five questions and writes the site's settings; the
pages, templates and stylesheet are yours to write, as
Templates describes. statac serve
builds the site, shows it at http://localhost:3000/ and builds it again
on every save.
Documentation
Everything else is at statac.dev.
Report a problem in Statac's issues on git.statac.dev, Statac's home. The copy on GitHub is read-only, with its issues turned off.
Licence
Statac is offered under the MIT licence or the Apache License 2.0, at your
choice. THIRD-PARTY.md lists the work of others that it carries, each
with its licence.