I built an interactive recipe builder (particularly for dough recipes). I bake a fair amount of bread and use it, along with the more primitive version on my personal blog, to simplify dough calculations. A friend urged me to share it with HN, so here it is.
Some technical details which may be interesting to this audience:
- The recipes, apart from a handful of hard coded examples, are fully encoded in query parameters. This comes with problems (like a browser-specific character limit), but in the context of a recipe I consider these edge cases.
- The body supports Markdown, but sanitizes the HTML with DOMPurify. This limits some of the most obvious attack vectors like including a malicious <script> tag in the body and sharing the link. I'm sure it's far from perfect and would greatly appreciate any tips to improve security!
- Using Cloudflare cache rules, all recipes are cached at edge. This keeps load on the underlying Fly servers quite low and will hopefully keep my hosting costs even lower.
Enjoy!