Prop Continuity Desk: the parcel cannot be in two places
An entry prepared for Sanity Challenge — Path Two . What I Built Prop Continuity Desk is a rehearsal planning board for a small theatre production. Its fictional play, A Place on the Last Boat , has six scenes and twelve physical props. A parcel enters with a passenger, a torch leaves with a crew member, and a key ring changes hands in the final scene. The app catches two mistakes: placing the…
Article: Prop Continuity Desk: the parcel cannot be in two places
The Prop Continuity Desk is a rehearsal planning tool for small theatre productions. It tracks a single play with six scenes and twelve physical props. The app catches mistakes like placing the same prop twice in a scene or moving a prop between scenes without recording it. It also handles a less obvious issue: a previously reviewed plan can become invalid if an earlier prop movement changes.
Each review is tied to the exact plan and history used, not just a physical setup. The main board shows published content, and visitors can try their own edits without affecting the actual production. When editing a torch cue, Scene 2 and later scenes require rechecking because Scene 1 doesn't depend on future content.
The system exports a cue sheet, showing the difference between practice and published plans. The demo uses Next.js, React and TypeScript, and runs tests in Codex. The project includes a Sanity schema, seed generator, domain rules, and query integration tests. A reviewer needs authenticated Content and Plan review tools, while the public board and practice copy are accessible without sharing administrator credentials.
The source provides screenshots of the actual workflow, and the code repository contains everything needed to run the app. The build process was delegated, with the owner setting up the project but not writing the code or executing tests. Development began on September 26, 2026, and the app handles constraints like six scenes, twelve props, and stage zones.
It includes rules for what counts as a movement and how reviews depend on history. The app can display stale content, but updates to the published plan will invalidate outdated reviews. Local tests and GROQ evaluations passed before connection, but real permissions and persistence were verified after the owner created the Sanity project. The live data labels wait for a successful Sanity request before showing any information.
The final tests passed with 19 passing checks, including a successful Next.js build and Studio schema deployment. The practice cue sheet was downloaded and inspected, confirming the planning behavior. However, the app is for planning purposes only and does not guarantee physical readiness backstage.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.