# featkpr in 90 seconds

What featkpr does, told by the feat-keeper on one BookStack feature: it finds the feature in the code and on a running copy, writes it down with the goal behind it, tests it, and your team keeps each piece.

film v2, web · 6 Oct 2026 · 1:30 · sound and captions

[Ask for a private demo](https://featkpr.com/demo) [Read how it works](https://featkpr.com/start) 0:00 / 1:30 [Ask for a private demo](https://featkpr.com/demo)

Half an hour with Tim on the live app and BookStack's real records.

[Explore on your own](https://featkpr.com/product/map) [Read how it works](https://featkpr.com/start)

## Chapters

Each one starts the film there, with sound.

## What is said, and what is on screen

Read the film: what is said, and what is on screen

0:00

Nobody knows everything your app does.

On screen: A keeper with a lantern walks along a dark building of many windows (your app) and raises the lantern; one window high up lights.

0:03

featkpr keeps a living map of what your app does, so docs, tests and reviews are always correct.

On screen: The building fades to an outline, and a route climbs through it, lighting one point at a time.

0:11

Take BookStack, a wiki we don't own.

On screen: The outline becomes BookStack's map, its modules labelled (Entities, Settings, Users, Exports, Permissions and more), under the line: an open-source wiki we don't own.

0:14

One thing it does: restore an old version of a page.

On screen: BookStack's own Page Revisions screen (a crawl capture); the pointer reaches Restore on an old revision.

0:17

featkpr finds it in the code, and on a running copy.

On screen: Beside it, the code: PageRepo.php:259, restoreRevision, joined by a line to the same screen on a running copy.

0:21

It writes down the feature, and the goal behind it.

On screen: featkpr's record of one feature, read 2 Oct 2026: the feature Restore a previous page revision (BookStack, Entities, seen in the code and on a running copy), and under it the goal Restore the page.

0:24

Then it tests that goal in pairs: delete a revision, then restore it.

On screen: The revisions screen again, with a note that the test sends requests and does not click: step 1, delete the revision, answers 200. The keeper walks up to a closed door.

0:28

Stop, stop, stop.

On screen: No words: a slide whistle falls. The keeper throws up a hand at the door, which glows red.

0:31

A person reproduced it by hand: a real BookStack bug, now reported.

On screen: A red chip: 500 instead of 404, should say "not found", crashed instead. He pins a note to the door (BookStack, 500 not 404, by hand, 29 Sep); a line reads: reported to BookStack, #6233, open, milestoned for v26.09.2, read 4 Oct 2026.

0:36

That was one feature.

On screen: The picture flashes red, then pulls back to BookStack's whole map, the one feature marked on it.

0:39

featkpr wrote down 312.

On screen: Every feature on the map lights up.

0:42

Every test also runs as the wrong user, and must fail.

On screen: Beside the map, featkpr's Runs screen for BookStack, the run of 28 Sep: 311 of 311 tests pass; 276 also fail as the wrong user, proven; 35 not proven; 0 failed. The map's squares take the run's colours.

0:46

Five more apps came in through Add an app.

On screen: The camera pulls back to a street of buildings, each an app with its count: Formbricks 89 features, Immich 294, countbean (read, none named yet), BookStack 312, InvenTree 240, Shlink 25, and featkpr itself, 146 features and 45 goals.

0:49

Yours comes in the same way: paste its repository, and the map starts.

On screen: An empty lot labelled your app (a placeholder): the Add an app screen takes a repository's address, and the lot starts to fill with squares.

0:53

Your team keeps each piece, or marks it not needed.

On screen: The keeper stamps a card: Restore a previous page revision, BookStack, Entities, kept by your team, beside the buttons Keep and Not needed. A line reads: a sketch of your review, not real verdicts.

0:57

What lived in a few people's heads is now written down, and agreed.

On screen: BookStack's map, people beside it with thought bubbles holding pieces of it; the legend reads kept, not needed, waiting, and the map gets an outline: written down, agreed by your team.

1:01

Anyone who asks gets the same answer.

On screen: People labelled product, QA, support and new hire each ask a question, and each gets the same map.

1:04

Now your whole team knows what your app does.

On screen: The building from the opening, every window lit, the team standing in front of it; an inset shows 0:00, the same building.

1:07

Half of developers lose ten hours a week, and finding information is the top cause.

On screen: 50% of developers lose 10+ hours a week; #1 cause: finding information. Survey: Atlassian, State of Developer Experience 2025, 3,500 developers and managers.

1:12

featkpr is built to give that time back.

On screen: The lit building and a clock: built to give that time back, marked featkpr's aim, not a measured result.

1:16

We map open-source apps in the open: features, flows, tests.

On screen: The street of apps again, marked public on featkpr.com/library, mapped by featkpr, not by the apps' makers. Three chips: features, 5 open-source apps; flows, BookStack; tests, BookStack, run daily.

1:21

Next: user guides, updated with every release.

On screen: A dashed card: user guide, written from the map, marked NEXT; a line reads: next, planned, not in featkpr yet.

1:25

See it on your app: ask for a private demo.

On screen: The featkpr mark rises over the street, then the end card: the featkpr mark and name, A shared understanding of what your app does, featkpr.com/demo, and Voice: synthetic (ElevenLabs) · Script: Tim.

Voice: a synthetic voice (ElevenLabs, "Jon"). Script: Tim. The feat-keeper, the building, the doors and the people are drawn, as a story; the map, the feature, the goal, the Runs screen and the BookStack screens inside the film are featkpr's own records of BookStack, and the Add an app screen is shown on a placeholder repository.

312 features: featkpr's records of BookStack, exported 30 Sep 2026 · the bug: BookStack issue #6233, reproduced by hand on v26.09.1

## What is drawn, and what is real

The film tells a story with a drawn character. Everything it claims about the product is shown on featkpr's own records.

### Drawn, as a story

- The feat-keeper, his lantern, keys and note
- The building of windows, the red door and the street of apps
- The people, and the review card he stamps: a sketch of your review, not real verdicts
- The user guide card: next, planned, not in featkpr yet

### featkpr's own, on BookStack

- The map, and the count: 298 features, exported 20 Oct 2026
- The feature Restore a previous page revision, its anchor PageRepo.php:259 and BookStack's Page Revisions screen
- The Runs screen: the run of 20 Oct 2026, 03:18 UTC, 276 of 311 tests proven
- The server error: BookStack issue #6233, reproduced by hand on v26.09.1
- The other apps' feature counts, read from production on 2 and 4 Oct
- The survey figure is Atlassian's (State of Developer Experience 2025), cited on screen

## See BookStack's map on a call, then yours

Half an hour with Tim on the live app and BookStack's real records. Bring the questions you would ask about your own app.

[Ask for a private demo](https://featkpr.com/demo)

- **You ask** One email is enough. Tim reads each one and writes back.
- **A live half hour on BookStack** Tim shows you the real app and the map of BookStack, your questions first.
- **Your app next** Today we set up each app ourselves, from your repository and a throwaway copy. We take a few teams at a time.
- **A private read-only demo, for your team** For people you invite, behind a one-time code, once the proof is worth showing; until then, the call is the demo: decided 27 Sep, not built yet.

---

The page this twin stands for: https://featkpr.com/film. Every page on this site has a `.md` twin, and answers `Accept: text/markdown`.
