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.
Project location
Section titled “Project location”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.
project.json
Section titled “project.json”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.
| Field | Description |
|---|---|
name | Display name shown in the project list |
path | Absolute path to the project folder |
createdAt | ISO timestamp when the project was created |
starterId | Starter used at creation (basic or multi-entry) |
webflowSiteId | Linked Webflow site ID (when connected) |
webflowSiteName | Linked site display name |
starterTemplateSource | How 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.
Template layout
Section titled “Template layout”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 metadataSee Starters for differences between Single entry and Multi entry templates.
Editable paths
Section titled “Editable paths”The editor and file tree show only paths you can open, create, edit, and save:
| Path | Editable |
|---|---|
src/** | Yes — modules, styles, lib, utils |
biome.json, biome.jsonc | Yes — 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.
Agent configuration
Section titled “Agent configuration”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: alwaysorapply: 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.
Dev server
Section titled “Dev server”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.