π§ Model/Function Builder
Explore one model at a time: picking a model replaces the editor below with just that model's block, and the parameter fields rewrite the YAML as you type. Build a full pipeline in Advanced Configuration further down.
π‘ The Lab records the shape of each check (mode, detector, models, pass or fail), never your values. What is recorded
π§ Blockchain Ledger
Each press of Validate with Pyxel adds a block, pass or fail: the YAML exactly as it was, its verdict, the files it names and the Pyxel schema it was checked against. Each block carries the SHA-256 of the one before, so a later change to an old block shows. Copy, share or reopen a config from its block.
The ledger stays in this browser and never leaves your device. It shows changes to stored blocks but cannot stop someone rewriting the whole chain, and its times come from this computer's clock.
π Tutorial
A reference page per model β what it does, which detectors it applies to, and an example config block. The list mirrors the builder's dropdown, with a getting-started guide and mission walkthroughs at the top, and opening a page never changes your configuration.
π°οΈ Advanced Configuration
Assemble a full pipeline here β running mode, detector, and model steps are merged into the builder's YAML above as you choose them. Hand edits to that YAML are kept until you change a control here, which rebuilds the file. Comments do not survive that, so the builder asks first when the YAML has any.
π°οΈ Mission Profile (optional)
Start from a real instrument. Pick a mission, then one of its channels: the Detector and Pipeline steps below are filled with that channel's detector and a starting model chain, which you can then refine. You can also download each channel as its own config.
1 Running Mode
How the simulation runs: one frame (Exposure), a parameter sweep (Observation), or a fit to measured data (Calibration). It sets the config's top-level block, not detector behavior. Focal Plane Array is the exception: it replaces the Detector and Pipeline steps with its own tiles.
2 Detector
Sets which parameters and validation rules apply, and fills the fields below with starting values. A detector class gives generic defaults; a named preset starts from a specific device, whose values are worth checking against its datasheet. The pipeline step below marks models Pyxel will not run on the class you pick.
3 Pipeline
Start from a ready-made model stack, then add, remove, or drag to reorder steps. A preset replaces whatever is in the list, so pick one first and customize afterwards. Order matters within a stage, but the stages themselves always run in Pyxel's fixed order however you arrange them here.
Presets
Model steps
4 Review
Every choice above is written into the YAML editor at the top of the page. Check it there: validate it against Pyxel's schema, draw the pipeline, list the files it needs, then copy or share it.
β¬οΈ Go to the YAML editor and its actionsπ Privacy & Telemetry
The Lab records how it gets used, so it can be made easier. This is on unless you turn it off, with the switch below or the Turn off button under Validate with Pyxel.
Each press of Validate records the shape of the check: the running mode, the detector type, which of Pyxel's catalogued models are in the pipeline and at which stage, whether it passed, how many issues and warnings it raised, which press this is in your visit, and how the config started (a preset, a mission profile, a shared link, the Model Explorer, the ledger, or a blank editor, and whether you typed in it since). The Lab's live checks while you edit record the same shape, plus which validation rules fired and where in the structure. The Lab also records which sections you view and for how long, which buttons you press, a rough screen size (phone, tablet or desktop), and the name of the website that sent you here (never the full address).
Model names are recorded only when they are in Pyxel's own catalogue; anything else reads "unknown". The Lab never records the contents of your configuration, the values you type, file names, the names you give steps, or a shared link's contents. A random number ties one visit together and is forgotten when the page closes. There are no accounts, no cookies and no advertising trackers.
Each time the Lab opens, it also sends one visit count: just "the Lab was opened", and whether recording is on. It carries no ID and stores nothing on your device.
All of it goes to a small relay on Cloudflare (honeycomb-proxy.doby.workers.dev), which passes it on to Honeycomb, a service for looking at this kind of data. Like any request a web page makes, it reaches Cloudflare with your IP address and your browser's description of itself (its user agent); the Lab adds neither to what it sends, and the relay does not pass them on.
If your browser sends Do Not Track or Global Privacy Control, nothing is sent at all, not even the visit count. If you turn recording off, the Lab remembers that choice in this browser and sends only the visit count. You can turn it back on at any time, right here.
The π§ Blockchain Ledger is separate from all of this. It keeps every config you validate, with its verdict, in this browser's own storage for this site, so it is still there when you come back, and it is never sent anywhere. Anyone using this browser profile can open it, so on a shared computer use Clear history in the ledger when you are done.
Feedback is always welcome. If you encounter a bug, have a suggestion, or would like to share your experience using the Config Lab, please feel free to open an issue on the Pyxel Config Lab project page . Community feedback is genuinely appreciated and plays an important role in improving the Lab for everyone. Thank you for being here!π«
You can also try Pyxel Assistive Reading Companion (ARC)β¨ , a Firefox extension that provides contextual explanations for Pyxel concepts while reading the documentation.
π¬ Share Your Feedback
Have a suggestion, found a bug, or want to tell me how Config Lab worked for you? Your feedback genuinely shapes what gets improved next. The form opens in a new tab, every field is optional, and what you send goes by email through Formspree, a form service.
π Open the Feedback Form