Skip to content
Download

Project structure

Each Ssscript project is a folder on disk containing a starter template, your code, and metadata the app uses for Webflow linking and AI context.

Projects are stored under the app data directory:

  • macOS: ~/Library/Application Support/com.federicovalla.ssscript/projects/
  • Windows: %APPDATA%\com.federicovalla.ssscript\projects\

Use Open projects folder on the entry screen to reveal this directory in Finder or Explorer.

Every project has a project.json at the root (or fallback at .ssscript/project.json). The app reads and writes this file; you rarely need to edit it by hand.

FieldDescription
nameDisplay name shown in the project list
pathAbsolute path to the project folder
createdAtISO timestamp when the project was created
starterIdStarter used at creation (basic or multi-entry)
webflowSiteIdLinked Webflow site ID (when connected)
webflowSiteNameLinked site display name
starterTemplateSourceHow the template was loaded (remote, bundled, bundled-fallback)

Webflow site linking is updated when you connect a site in the app header — see Webflow integration.

When you create a project, the selected starter is copied into the folder:

my-project/
├── src/ # Application code
│ ├── app.ts # Entry point
│ ├── modules/ # data-module components
│ ├── lib/ # scroll, subs, gsap, pages
│ ├── styles/ # app.css + mod/
│ └── webflow/ # Designer detection
├── bin/ # Dev server and build scripts
├── vendor/ # Starter framework config
├── .ssscript/ # AI rules and skills
│ ├── rules/ # Persistent agent guidance
│ ├── skills/ # Task-specific agent skills
│ └── agent.json # Runtime MCP and model config (when hydrated)
├── package.json # Dependencies and deploy profile
├── tsconfig.json
├── biome.json
├── bunconfig.toml
├── .env.example
├── .gitignore
└── project.json # App metadata

See Starters for differences between Single entry and Multi entry templates.

The editor and file tree show only paths you can open, create, edit, and save:

PathEditable
src/**Yes — modules, styles, lib, utils
biome.json, biome.jsoncYes — formatter config at project root

These paths are not editable in the desktop editor (read-only or hidden):

  • bin/, vendor/, node_modules/, dist/
  • Root config files like package.json, tsconfig.json, agent.json
  • .ssscript/ (rules and skills are bundled; customize via AI handoff or external editor if needed)

The AI agent is scoped to the same editable paths (src/). It will not write .html files or stray CSS outside src/styles/mod/ and src/styles/app.css. See Module system for CSS ownership rules.

Runtime and MCP settings live under .ssscript/:

  • agent.json — MCP servers (Webflow, Figma), model catalog. Hydrated when the project is set up or when you enable integrations from the app header.
  • rules/ — Markdown rules injected into AI context (apply: always or apply: optional).
  • skills/ — Task-specific instructions the agent loads on demand.

Global runtime defaults can also live in ~/.config/ssscript/agent-runtime.json. Project-level config overrides global settings.

For runtime behavior (structured plans, auth, parallel slots): Agent runtime integration.

Starters use the app-managed Bun runtime. The dev server runs at http://localhost:6454 with live reload. You do not need a system Bun or Node install.

See Bun runtime for how the app delivers and caches the Bun binary.

  • Projects — create and open projects
  • Editor — file tree and code view
  • FAQ — common questions