An IDE for authoring interactive fiction targeting Inform 7 and the Glulx virtual machine. Provides visual tools (node graphs, tables) that compile one-way into Inform 7 source text.
- App Shell: Tauri v2 (Rust backend)
- Frontend: React 19 + TypeScript
- State: Zustand with undo/redo (zundo)
- Validation: Zod schemas
- Build: Vite
- Tests: Vitest
npm install
npm run dev # Start Vite dev server
npm run test # Run tests
npm run build # Build frontendsrc/domain/— Core domain model (Room, Thing, Connection, Scene, ActionRule, etc.)src/compiler/— One-way compilation engine: domain model → Inform 7 sourcesrc/plugins/— Plugin system for Inform 7 community extensionssrc/store/— Zustand state management with undo/redosrc/persistence/— JSON project file save/load with migrationsrc/components/— React UI shell (resizable panels)src-tauri/— Tauri backend (file I/O, compiler invocation)
Projects are saved as .goshen files (JSON format, human-readable, version-controlled).