A little preview of a thing I've been working on lately. The layout and visual design is far from finalized (there's no styling on the HTML at all) and there are at least a few more features that I want to add before I upload this somewhere, but the core functionality works. You give it some control points, it produces a plan that you can roast a batch of coffee against. Below the bottom of this image there are a couple buttons for exporting the generated plan either to CSV or Typica's XML.
The end time field is a handy one. By default the curve will stop once you reach the final control point, but if you set the end time farther out it'll extend the curve to the specified time. You can also set it earlier to get a shorter roasting plan without changing the shape of the part you're keeping. Useful for the case of deciding you want to try roasting something a little lighter or darker.
The main reason to use this over something else is the curve type. Pretty much all of the stuff I've seen starts from the wrong math, making it harder than it should be (but not impossible) to get a roasting plan that you can follow in this universe. This one produces the least curvy curve that passes through all the points which makes it harder (but not impossible) to create plans that you can't easily follow.