Publish
Fetching from other sites
Statac fetches a few things from other sites into a folder of your site, so that a build never needs the network.
What Statac fetches, and when
| What | When it arrives | Where it’s kept |
|---|---|---|
| The still of a video kept on YouTube or Vimeo | As statac serve starts, or when you run statac refresh |
fetched/stills/, as youtube-abcdefghijk.jpg |
| New webmentions, on a site that has them on | At the same times, after the stills | fetched/mentions/, a file each |
| The picture of whoever sent a webmention | With the webmention | fetched/faces/ |
| What was fetched, and on which day | With each thing fetched | fetched/record |
| The webmentions you turned away | When you run statac refuse |
fetched/refused |
fetched/ sits beside content/. Commit it, and the site builds the
same anywhere, with nothing to fetch.
build and check never use the network. They read fetched/ and
never change it.
Nothing in fetched/ is published as it is: a still or a face reaches a
reader only as the copies Statac makes
of it.
statac serve fetches what is new once, after its first build with no
errors: see fetching as it starts.
Fetch what’s new
statac refresh
Fetched `fetched/stills/youtube-abcdefghijk.jpg`.
No still: Vimeo has no picture for `123456789`.
Fetched 1 still. 3 already here.
refresh builds the site in memory, drafts and posts waiting for their
day with it, and fetches a still for each video that has none yet. Then,
on a site with webmentions on, it asks for
the new ones.
| Option | What it does |
|---|---|
--site=<folder> |
The site’s folder, as statac refresh docs names it. Without either, the site the current folder is in. |
--today=<date> |
The day the record gives each thing fetched, as 2026-10-04. Without it, today in the site’s timezone. |
refresh ends with 1 where the site has an error, or a still, the
webmentions or a file couldn’t be fetched or written. A video with no
still on its own site isn’t a failure. See
exit codes.
How old is it?
Fetched: 12 stills, the oldest 40 days ago.
statac build says how long ago the oldest still was fetched and, on a
site with webmentions, the newest of those:
Fetched: 87 stills, the oldest 6 days ago; 12 webmentions, the newest today.
What fetched/ already holds is never fetched again, until you
fetch it again yourself.
The record
statac fetched 1
stills/vimeo-123456789.jpg absent 2026-10-06
stills/youtube-abcdefghijk.jpg 0f3a9c1e5b7d2468 2026-10-06
fetched/record has a line for each file, webmentions and faces too:
its path under fetched/, the start of a hash of what it holds, and the
day it was fetched. Statac writes it, and you never need to.
absent marks a still the video site doesn’t have, or a webmention that
wasn’t kept. refresh never asks for either again.
A still with no line in the record is one you put there yourself. It is used like any other, and has no date.
Fetch a still again
Delete the still and its line in fetched/record, then run
statac refresh. To ask again for one the record says is absent,
delete its line.
Working offline
statac serve --offline
Offline: nothing is fetched from other sites.
--offline has serve fetch nothing. Without a connection, serve says
so and goes on, and refresh ends with 1.
Where next?
- Videos and files: showing a video kept on YouTube or Vimeo, its still and pressing play
- Webmentions: turning them on, showing them and turning one away
- Serving a site while you write: what serve fetches as it starts
- Building and publishing:
statac build,statac checkand exit codes
Something unclear or wrong? Open an issue on GitHub.