Skip to content

The Studio workspace

Studio opens directly into an editable project. File → New project starts empty main.hyle and initial.hyleworld files; a simulation link loads its exact published revision. File → Open from library… opens saved projects on demand. Add parts browses reusable building blocks and inserts exact-version imports into the current project.

The web app has File, View and Help menus. The native app puts those operations in its application menu. File opens local projects and read-only bakes, saves drafts to your profile and downloads project or bake files. Help links to the language and Studio guides.

Use the plus button beside Files to add .hyle, .hyleworld or .hyleobject files. The editor highlights language vocabulary, comments and literals. Compilation checks the program and reports diagnostics; highlighting alone does not prove validity. The Dependencies section shows resolved, read-only published parts and their versions.

Indicator Meaning
Project heading and Save row Identity, draft/publication, unsaved changes, saving or errors
Files and Dependencies Editable source and pinned, read-only library revisions
Compile status Source not compiled, compiled, changed since compile, or invalid
Viewport toolbar Paused/running, tick, current cell count and selected solver
Timeline Recorded states, displayed frame and temporary storage usage

A successful tick does not mean the project is saved. A successful source save does not turn the displayed frame into its starting world. Save failures remain visible while you continue viewing or running the simulation.

.hyle files define the models and rules. A .hyleworld recipe defines the starting cells. New projects select initial.hyleworld as their world entrypoint. Compile rebuilds that starting world from the current source.

Painting, erasing and stepping change the live scene and timeline; they do not rewrite the recipe. Save keeps source edits. Project settings → Fork from this state saves the displayed cells into a new private draft in another tab, with captured.hyleworld as its starting recipe. It also works from a past timeline frame.

Before recompiling, download any timeline you want to keep. Recompiling starts a new history session; it does not replay your brush strokes or previous steps.

Select a cell to show its fields in the left tool panel on desktop. Narrow layouts use a Cell Inspector sheet. Camera/view controls and volume slices help reach interior cells. The source divider supports pointer dragging and keyboard arrows. Project settings hold metadata and the state-fork action.

A prominent warning identifies guest work. Signing in keeps the working editor state, but saving is still explicit. See saving and publishing and solvers and precision.

Declare global controls in your .hyle source, alongside the world-level declarations:

in heating: Float<0.25> [0.0 1.0];
in enabled: Bool<true>;

After compiling, Inputs appears in a panel docked at the bottom of the tools sidebar, with fields for these declarations. It is hidden when there are no inputs. Numeric controls show their allowed interval and reuse the shared number scrubber: drag horizontally with no visible slider track, or click to type. Dragging commits once on release, avoiding repeated timeline snapshots; Bool inputs use True/False choices. Press Enter or leave a numeric field to apply it. A change pauses playback and affects the next step without recompiling or rebuilding the starting world.

The timeline remembers input values, including undo/redo and downloaded bakes. Past frames and read-only bakes show their recorded values with controls locked. Recompiling resets the controls to their source defaults. Source saves and cell-state forks do not save these overrides; edit the declaration’s default to keep a setting in the project, or download a bake to retain it with the timeline.

Hyle Astro