Weekly Update: Friday, June 20, 2025

I am going to try weekly checkins at the beginning of the weekend. With my work schedule these days, I think this is more realistic.

Accordion Task

Accordion Task's project page

Done:

Redesigned the progress bar. Now it progresses when you check off tasks, proportionally to how long the task was originally scheduled to take.

Went through and addressed most Clippy Pedantic lints. Learned some cool language features I didn't know about, like this lint about let else, and this lint about nesting OR patterns.

Added Clippy Restriction lints to identify prototyping code to clean up (like unwraps and dbgs).

Decided that I'll prioritize making a webapp version and keep the TUI experimental for now. I am more experienced making things accessible in the browser than in a terminal emulator, and my wife is interested in trying Accordion Task if there is a browser version. I'm at the point where having detailed feedback from a few people could help me stay on the right track.

Next:

For fun over the weekend I'm trying to set up Leptos for a trial and potential later use. I watched a video about Leptos a while ago and thought the syntax looked appealing, and liked how it looks like it gives high control over the final product. I am worried about using WASM because my phone browser doesn't support it?! It is a new phone with GrapheneOS. I wonder if there's a setting to turn it on. (Update: It's opt-in on a per-site basis to prevent Just-In-Time JavaScript compilation for security reasons.) Is there a way to compile WASM to JavaScript for backwards compatability as a fallback?

I need to figure out how to compile Leptos on NixOS: I might need to look into alternatives to my current simple solution, because I don't know to target wasm32-unknown-unknown with the declarative installation yet. Might try fenix? ...but I still haven't figured out Flakes (Is it even possible to incrementally adopt them?) yet and that's probably making things harder.

I need to work through those Clippy lints to make the code more robust. Probably a good thing to do during my work breaks, because I am worried it might be boring.

I need to read about RustDoc and different philosophies around code documentation in general. There is a RustDoc book, and Write the Docs has a big guide, which I might cherrypick from.

I'm getting so close! Cleaning things up is a huge part of the work, but it feels much better to do it when you're excited to get to share.

Self Hosting

Set up a guest wifi on its own firewall group. I still need to make one for IOT devices (some home appliances my wife uses apps with), and then I'll be able to turn my ISP's gateway into a normal modem. That's the next step in debugging WireGuard access from my phone to the home server.

Some WireGuard resources that have been helpful for me:

Learned how to upgrade NixOS so I could compile Leptos. I hadn't realized you have to change channels.

My mom gifted me a small unmanaged network switch. I want to put the printer on it! I need a couple more short Ethernet cables before I can use it.

Other

My brother is on summer break and wants to play Screeps with me. I played Screeps when it first came out. I see that you can use any language that compiles to WASM now, so it sounds like a fun time to try again! Last time, I felt very overwhelmed. I bet I'd be so much better at it now because I am better at abstracting and organizing my code. You can self host it. I don't really want to play with strangers, so maybe I'll try setting it up on my server.

I was having fun earlier this month writing about knitting math. I'm drafting it in Typst but would be transcribing it to MathML (I guess? I heard it has better accessibility now, but haven't done the research yet.) before putting it online. The Typst IDE really is a joy to write in.

I have to put together some art for an old game. I'll talk about it more when it's done!

The Roguelike Celebration is currently accepting submissions. I have an idea for a talk, but I'm not sure if I'll submit in time for the deadline because of the surprirse art project (with a deadline) that I have to do now. Either way, it is a delightful online conference and I'm looking forward to attending.

Discoveries