About this project

Borogove is an online IDE for interactive fiction (IF) languages. This repository contains the client-side application code. The main technologies are TypeScript, React for the UI, MobX for state management, SASS for styling, and Node.js for build tooling. The project also uses Storybook for building and testing UI components. For local setup, install Node.js and npm or Yarn, run npm install or yarn install, create a .env file from .env.example, and optionally add Firebase configuration to src/services/firebase/firebase.config.ts. Firebase integration enables publishing games and the Snippets variant; if Firebase is not used, the empty configuration can be copied instead. Run npm start or yarn start to start the development server at localhost:3000. The Snippets feature can be started with npm run start:snippets. Storybook can be run with npm run storybook or yarn storybook and is served at localhost:6006; component stories are kept alongside components with a .stories.tsx extension. The npm run build command creates a website in the build directory that can be copied to any web hosting. Firebase hosting deployment is available through npm run deploy:prod and npm run deploy:dev, with Firebase project IDs configured in .firebaserc.