Scripts
Scripts need the Standard or Pro plan. Everything else about building configurators works on Base.
Most configurators work by swapping between parts you prepared in advance. That is fast, reliable, and enough for the majority of products.
A script is for when it is not. When a customer types a width and the shelf has to be built to that width, no set of prepared models can cover every possibility, so the geometry has to be calculated instead. That is what scripts do.
Three ways to write one
Rete is a visual node editor. You drag nodes onto a canvas and wire them together, and each node does one thing such as making a box, cutting one shape out of another, or reading a value the customer entered. It suits people who think visually and do not want to write code.
Blockly snaps blocks together like puzzle pieces. It is the gentlest introduction and good for straightforward calculations.
TypeScript is a code editor with full autocomplete over our geometry library. It is the most direct route if you or your developer already write code.
All three produce the same thing, and you can pick per script.
How a script reaches a customer
A script is not published to a product on its own. It has no options panel and no prices, so on its own there would be nothing for a customer to interact with.
Instead you publish the script, then open a project and link the script in Composer's Scripting section. The project supplies the panel your customer uses, the pricing, and the connection to your products, and passes their choices into the script. The script returns geometry, and the project displays it.
That means the answer to "should I build a project or a script" is usually both. The project is the product. The script is the part of it that does the maths.
Keeping the two in step
Publishing a script does not update the projects using it. Those projects are still running the version of the script they were published with, which is deliberate, because a change to a script should not silently alter a live product.
When a linked script has moved on, the project page says so. Republish the project when you are ready, and it picks up the newer script.
Geometry engines
Scripts can use CAD engines for precise solid modelling and boolean operations. You choose which ones to load in Composer's Scripting section, and you should turn on only what a script actually uses, since each one adds to what your customer's browser downloads.
Learning to build them
The editors are the same ones used across the bitbybit.dev platform, and the wider platform documentation covers them in far more depth than would fit here, including the full library of geometry operations.