If anyone good with basic webdev wants to help roc, I have a relatively simple project!
Recently, I spun up continuous fuzzing. As part of this I made a super ugly website: https://roc-lang.github.io/roc-compiler-fuzz/
This is the much nicer looking inspiration website: https://devhub.tigerbeetle.com/
Fundamentally, the hope for this project is to make the website look nice and have pages basic filtering abilities based on url params (like : https://devhub.tigerbeetle.com/?fuzzer=canary&commit=c2f152c77876d238d0605bd156c926e5ed3633bd)
The goal is not bring in any heavy dependencies (though some sort of zig templating library would be fine if needed). I'm thinking it would mostly be a few small js scripts to make the site function (query time to print freshness, do filtering, etc) along with css for pretty colors.
To work on the project simply fork: https://github.com/roc-lang/roc-compiler-fuzz
Just edit src/generate_website.zig to create whatever files you need in www. Feel free to add static assets and check them into the repo as well.
Only dependency is zig 0.13.0. The site is built with zig build generate-website
Comment here if you are interested.
I would be if I wasn't so heads down on the parser right now. If no one raises their hand before I'm done, I can help
I am interested in updating this
:party_ball:
All yours! Let me know if you need any support or once you have a PR.
I'm also sure folks here will have design guidance if you want any.
Checkout the design Anthony did recently on the new docs site. It's pretty. Maybe that helps woth colors or different things.
https://www.roc-lang.org/builtins/Str#Utf8Problem
Made a PR for some simple styling... https://github.com/roc-lang/roc-compiler-fuzz/pull/1
I don't quite understand what the timestamp is telling me, in relation to the different commits.
@Brendan Hansknecht it would be helpful if we included a brief explanation of how it works somewhere. Possibly on this page or the README and we could link to it.
Something simple like -- "CI runs every 4 hours. It runs these xxx fuzzers and builds upon the previous corpus. It saves the data to xxx, and then generates a report."
Luke Boswell said:
I don't quite understand what the timestamp is telling me, in relation to the different commits.
Tiger beetle turns it into freshness (how long ago did the fuzzer find the bug). Fresher failures are more likely to still be relevant.
it would be helpful if we included a brief explanation of how it works somewhere. Possibly on this page or the README and we could link to it.
Updatet the readme with more details
This formatting... rip: https://roc-lang.github.io/roc-compiler-fuzz/
Screenshot 2025-03-10 at 11.46.35 PM.png
There are a few things I'd like to change here:
width: calc(100dvw - var(--table-padding))
)Even replacing the command text with a button to copy OR a "No failures"
An emoji like :check: would be nice instead of "Nil failures"
Also the variable width command column could go last, and that might help visually by not having a slab of empty space
But I want to stress, this looks very nice and Roc-y :-)
Last updated: Jul 05 2025 at 12:14 UTC