Speed
Rebuild what changed. Skip the rest.
Narrative keeps a dependency map in Valkey, so a small edit rebuilds a few pages instead of the whole site.
Incremental builds
How long a change takes
These are the typical times the Narrative project documents for a large site. Your numbers depend on the site and the machine.
| You change | Narrative rebuilds | Time |
|---|---|---|
| A single post | The post, its index page, its tag pages, and pagination | About 1.5 seconds |
| An image | Just that image, optimized and converted to WebP | Under 1 second |
| A stylesheet | The CSS only | Under 1 second |
| A template partial | Every page that uses the partial | Proportional to the pages |
| Everything on a 450-page site | Every page | About 50 seconds |
How it works
Dependencies, not guesses
{'When a post changes, Narrative finds the collections it belongs to, then every page that depends on those collections': 'index pages, tag pages, and pagination. It rebuilds those and leaves the rest alone.'}
Content hashes decide whether an image or a file needs work at all. An unchanged image is never processed twice, and an unchanged file is never uploaded twice.
Incremental builds need Valkey or Redis. Without it, Narrative falls back to full builds.
Shipping
Uploads are incremental too
- Hash-based upload skips files that did not change.
- Cache invalidation names the paths that changed, and one wildcard invalidation covers a large deploy.
- HTML and JavaScript are minified at upload time, per stage.
Contact
Questions about this tool?
Write to Renkara Media Group and a person will answer.