improvise — documentation

These are the working documents of the improvise repository, published as written. They are addressed to someone reading or changing the code: the arguments behind the architecture, the decisions that were made and the ones that were rejected, and the record of what each load-bearing test is guarding against.

Nothing here is a tutorial. For what the program does, see the project home or run the browser demo.

#Start here

What the project is for, and the principles the code is held to.

#Decision records

Decisions with consequences, including the options that were rejected.

#The arguments, by area

The reasoning that used to live in code comments. Written for a reader with the source open.

#Test evidence

For each test whose narrative is longer than its code: what broke, what fault was injected, and why the test can fail. Contributor reference, not a tour.

#About this site

What is published here, what is not, and why.

#Conventions

Ids like improvise-9c8c are tracker issues and link to the ticket index below. Paths like crates/improvise-core/src/model/types.rs link to the source on GitHub at 7e06448d8837ff764da7bbc0d94489f22c0d1949.