Everything currently being built, so nobody spends a weekend rebuilding something that already exists. Check here and the open PRs before starting anything substantial — and see CONTRIBUTING.md for how to claim a piece of work.
This is maintained by hand and will sometimes lag. If something here looks stale, ask in Discussions rather than assuming it's free.
Last updated: 3 August 2026, at v1.0.14.
In flight
| What |
Where |
Notes |
| bento/tray — native iOS host, so decks save in place |
tray/ |
Builds and runs; save round-trip verified on simulator |
| bento/tray for the browser — a WebExtension host |
tray/webext/ |
Save a double-clicked deck in place, without a native app. Active |
| bento/spaces (notes) |
spaces/ |
Scaffold builds a shell; the file-unit question is settled, the app is not |
| bento/dash (sheets & tables) |
design only |
Name and budgeting settled in docs/DECISIONS.md; no code yet |
| PowerPoint export |
#88 |
Community contribution, awaiting a decision on shape (in-core vs standalone) |
| Ghost Cut |
#97 |
Community contribution, awaiting a decision |
| Android for bento/tray |
#87 |
Starting point offered; likely to be reframed onto the existing bridge.js contract |
Several of these run in parallel in separate worktrees. If you're touching
kernel-zone code, read docs/PARALLEL-WORK.md first — those changes are serialised deliberately.
Recently landed
v1.0.14 — canvas panning (space-drag, and room past the slide edges), fit-a-text-box-to-its-text with window.bento.measure(), entrances and count-ups now running on morph slides, built-in layouts that fit the slide, and window.bento.validate() for checking a deck against what the runtime silently ignores.
v1.0.12–13 — laser pointer, iOS/iPadOS thumbnails, fade/slide/zoom transitions fixed, copy-paste that keeps embedded typefaces, every language pack complete.
Earlier — math via Temml (bundled, no CDN), symbol-by-symbol formula morph, blob offload so photos and video work in live collab, installable language packs, GitHub releases created automatically on publish.
Claimed by the platform — please ask first
These are settled and recorded in docs/DECISIONS.md; a PR that reopens one is likely to be declined however good the code:
Not started, and genuinely open
bento/dash is design-stage and unclaimed. Within slides, the open requests with nobody on them are #189 (formatting buttons — note there is currently no list support at all, so that work starts with lists), #188 (theme colour swatches) and #20 (horizontal slide list on mobile).
Everything currently being built, so nobody spends a weekend rebuilding something that already exists. Check here and the open PRs before starting anything substantial — and see CONTRIBUTING.md for how to claim a piece of work.
This is maintained by hand and will sometimes lag. If something here looks stale, ask in Discussions rather than assuming it's free.
Last updated: 3 August 2026, at v1.0.14.
In flight
tray/tray/webext/spaces/docs/DECISIONS.md; no code yetbridge.jscontractSeveral of these run in parallel in separate worktrees. If you're touching
kernel-zone code, read docs/PARALLEL-WORK.md first — those changes are serialised deliberately.
Recently landed
v1.0.14 — canvas panning (space-drag, and room past the slide edges), fit-a-text-box-to-its-text with
window.bento.measure(), entrances and count-ups now running on morph slides, built-in layouts that fit the slide, andwindow.bento.validate()for checking a deck against what the runtime silently ignores.v1.0.12–13 — laser pointer, iOS/iPadOS thumbnails, fade/slide/zoom transitions fixed, copy-paste that keeps embedded typefaces, every language pack complete.
Earlier — math via Temml (bundled, no CDN), symbol-by-symbol formula morph, blob offload so photos and video work in live collab, installable language packs, GitHub releases created automatically on publish.
Claimed by the platform — please ask first
These are settled and recorded in docs/DECISIONS.md; a PR that reopens one is likely to be declined however good the code:
#bento-docsplice contract is frozen — shipped updaters depend on it.measure()andvalidate()give agents the tools to size and check their own output; declarative layout containers were considered and declined (Agents cannot measure text: layout containers, auto-height, and window.bento.validate() #194).Not started, and genuinely open
bento/dash is design-stage and unclaimed. Within slides, the open requests with nobody on them are #189 (formatting buttons — note there is currently no list support at all, so that work starts with lists), #188 (theme colour swatches) and #20 (horizontal slide list on mobile).