Bio

:3

Stats

7
Projects
45
Devlogs
0
Votes
3
Ships

Coding Time

All Time: 117h 34m
Today: 0h 10m

Member Since

June 15, 2025

Badges

6
🔨
<%= admin_tool do %>
with great power comes great responsibility... and a ban hammer.
Lived Mas
you know what you did.
Gold Verified
this user is REALLY verified (i.e. gave us $32)
🎨
Graphic Design is My Passion
Oh God How Did This Get Here I Am Not Good With Computer
🚢
Maiden Voyage
you shipped your first project! the journey begins...
Verified
this user is verified (i.e. gave us $8)

Projects

7
🚀
1 devlog 15 days ago
🚀
10 devlogs 17 days ago
Summer Of Making
2 devlogs 19 days ago
powerd

powerd

Shipped
7 devlogs 26 days ago
🚀
3 devlogs about 2 months ago
scramjet

scramjet

Shipped
6 devlogs about 2 months ago
dreamland.js
16 devlogs about 2 months ago

Activity

Toshit
Toshit worked on SoM Harbor
3h 27m 5 days ago

Added a fetchDb function to just query straight from DB with the admin APIs. Used it to make a vote viewer.

Decided to just nuke the WASM html rewriter as it would probably just lead to more maintenance for me as the javascript side changed (i'm the only one working on wasm stuff). Fixed an annoying remnant of the old bundles as well.

Update attachment

Implemented TextFields (only the filled variant, not outlined; and no trailing icons yet either).

Added toggle buttons. It's built as a wrapper around the Button component with a flag element as a child to reuse all of its styling and props.

Fixed the linear progress bar styling.

Implemented the linear progress bar. It doesn't look exactly like the spec yet though.

Update attachment

Created a basic testing UI with m3-dreamland. I may be slightly contributing to the 1.1m requests sent to api/v1/devlogs according to the admin analytics

Added hybrid SSR finally! It's basically a replacement of Turbo Controllers with dreamland components. You get all the benefits of dreamland state management/reactivity while still being able to use rails/etc.

Implemented Chip.

Update attachment

Implemented Switch, with support for custom icons in the selected state.

Implemented Button styles when disabled.

Update attachment
Toshit
Toshit worked on epoxy-tls
1h 48m 15 days ago

Fixed the server leaking sockets when a client disconnects, and cleaned up server logging in the process. Also fixed a minor type issue in the WASM client.

Update attachment
Toshit
Toshit created a project
15d ago

epoxy-tls

A set of libraries and programs for securely bypassing CORS end-to-end-encrypted by running TLS in the browser through WebAssembly.

1 devlog 0 followers

Implemented most of the button spec (except xs/s target area overrides).

Cleaned up m3-dreamland v1's ripple and implemented the Card/CardClickable component.

Set up the styles component to generate the vars I'll use for components.

Update attachment

Ported svelte/motion Springs to dreamland so that I can use it for m3-dreamland.

Toshit
Toshit created a project
17d ago

m3-dreamland

Material 3 (Expressive) UI for <a href="https://summer.hackclub.com/projects/3" target="_blank" class="text-nice-blue hover:text-dark-blue font-medium transition-colors duration-200 cursor-pointer hover:underline">dreamland.js</a>

10 devlogs 0 followers

(Hopefully) fixed the users page 500 error when you have devlogs on deleted projects

Update attachment

Added a backdoor to the JSX factory to allow for JSX data components and changed the dreamland router syntax to use those for route definitions.

Update attachment
Toshit
Toshit worked on powerd
53m 19 days ago

Made a binary release and added intel-rapl MMIO zones support

Update attachment

Made a PR to add back markdown rendering to devlogs. Hopefully merging soon!

Update attachment
Toshit
Toshit created a project
19d ago

Summer Of Making

My contributions to Summer Of Making! I'm helping out with random stuff and finding vulns. (I personally didn't use ai so I'm not adding the tag)

Summer Of Making
2 devlogs 1 follower Shipped

Cleaned up a hackfix velzie made after I procrastinated on an actual fix. Also fixed use(a, b, c) and cleaned up code that had to handle Pointer<T> | T, saving a ton of bytes. (totally not procrastinating on hybrid ssr)

Update attachment

Added a README and fixed the docs a bit

Update attachment
Toshit
Toshit worked on powerd
3h 23m 22 days ago

Added support for setting powerd profiles through the power-profiles-daemon API. This means powerd can now be integrated with KDE through its power daemon!

Update attachment

Added a way to disable or change the frequency of automatic restoring of config. Also added a way to only disable automatic default profiles while keeping automatic restoring of config.

Update attachment
Toshit
Toshit worked on powerd
1h 13m 22 days ago

Revamped the action system to allow all actions (except restore) to be run without contacting the daemon. Also added support for polling upower for different default profiles on battery and AC power.

Update attachment
Toshit
Toshit worked on scramjet
2h 2m 24 days ago

Attempted to fix the WASM html rewriter but google apps menu is still broken :pf:

Update attachment
Toshit
Toshit worked on powerd
2h 47m 24 days ago

Attempted to add support for modifying EFI variables but all of the ones that handled CPU settings were locked in userspace so I gave up. Added a throttle-info subcommand instead

Update attachment
Toshit
Toshit worked on powerd
7h 36m 26 days ago

I started this project a while back and forgot to add it to SoM. Right now I have a ton of intel pstate, rapl, gpu, and dptf knobs added with all of them organized into separate files in src/sensors/. I've improved the default buildroot arm64 cross compile time from ~~18m to ~~13m.

Update attachment
Toshit
Toshit created a project
26d ago

powerd

Intel laptop cooling/power tweaking tool.

powerd
7 devlogs 2 followers Shipped
Toshit
Toshit worked on scramjet
2h 5m 28 days ago

Very late devlog sorry.

Attempted to fix web platform tests integration locally with act, then gave up and just used GitHub web editor. Also added an optimize for speed option to the rewriter.

Update attachment
Toshit
Toshit worked on SoM Harbor
4h 30m 28 days ago

Got auth, api/v1/ endpoints, flash error handling, and some SSR scraped endpoints (getShop, probeShop, postDevlog, deleteDevlog) working. Also set up a robust multi-client and ratelimit-handling client that wasn't needed because Rowan removed the ratelimits.

Implemented style object syntax (style={{ backgroundColor: "red" }}) and cleaned up the SSR bundle.

Started learning rails for dreamland 2 hybrid SSR (effectively sponsored by nora btw go check nora-changelog's threads). So far I'm thinking of a phlex component subclass that automagically serializes any whitelisted state and attaches a unique ID, then the dreamland component can target selectors to attach events or clientside components to.

Also cleaned up the store code to save like 360 bytes and push dreamland/core under 8000b.

Update attachment

Hydration is now fully working! I refactored the JSX factory to remove the dlarr code and saved 205 bytes in the process, mounted comments from the SSR tree to fix the new dynamic pointer code, and removed dl-ssr-css-id to bring down the overhead from 50+% to ~20%.

Update attachment

Basic SSR is now working! It now uses the JSX factory element construction order to match up SSR'd elements immediately when hydrating instead of waiting until the whole tree is constructed. The SSR'd tree is now very bloated with duplicated info however, but that can be fixed later. Also the dlarr code is broken but I think I'll completely replace that soon.

Update attachment

Worked on component state serialization for SSR. Now component state is sent to the client as a dlcss ID to JSON map in a script tag alongside the rewritten CSS. I can then parse the JSON and apply the state to the components being hydrated. Next step is to actually implement the clientside SSR lib for hydration.

Update attachment

Started the serverside SSR implementation! The render function returns a domhandler element for the component and an array of elements that need to be put in the document head which the user can append to a dom of the whole page and serialize to HTML.
I'm currently testing the code in the CSS test project I made in Journey v2, so it isn't actually running in node yet but I'm not using dom types so it should work fine.

Update attachment

Told copilot to write a hydrate function for SSR to laugh at it and it wrote 45% useless code, 45% copied code, and 10% partially useful code. Check it out at https://github.com/MercuryWorkshop/dreamlandjs/pull/14.

Anyway, I started SSR support by moving all DOM references into a separate file that exports them so that SSR plugins can override it. I think I have a plan for SSR now:
- Server overrides DOM to jsdom or similar for export to string, calls the server side init function
- Once on client, hydration overrides DOM to a fake version to match up elements with the server side tree and sets state (idk how I'll transfer over state I haven't decided that yet)
I need to figure out how to make deterministic CSS class names for the CSS-in-JS system first probably though

Update attachment

Tried to find a good bundle size visualizer library and eventually settled on rollup-plugin-visualizer in sourcemap mode. Also refactored the rollup config a bit to make it cleaner.

Update attachment

Did a ton of code golfing to reduce the (uncompressed) size down to below dreamland 1. dreamland 1 still has a better compressed size, which I think is because of the CSS selector parser using regex which is bad for compression.

brotli: 3480B dl2 after, 3598B dl2 before, 3306B dl1
gzip: 3826B dl2 after, 3951B dl2 before, 3656B dl1

Update attachment

Attempted class components again, but it turns out there's no way to dynamically add typed properties to a class so the typescript looks very forced and bad. Reverted it and will move on to SSR now

Update attachment

Refactored the state system to make it cleaner and less buggy. Also cleaned up the array child case in the JSX factory to use more builtin array operations.

I was going to post this devlog earlier, but I locked myself out of my projects (page 500ing) with invalid comment data.

Update attachment

Fixed a bug in the wasm HTML rewriter causing it to replace URLs twice creating invalid rewrite spans, also added more debugging features to the transformer for invalid rewrite spans. DuckDuckGo works with the wasm HTML rewriter now.

Update attachment

Almost done with the WASM html rewriter, it's 2x faster at rewriting the JavaScript standards webpage even when constantly going back to JS for rewrite rules. The only thing left is adding script elements to the head so that Scramjet scripts can be run.

Update attachment

Fixed unrewriting JS functions via sourcemaps. This means google sign in is working again and Anubis is closer to working (blob urls are still broken for anubis).
Also worked on the WASM port of the html rewriter some more, it currently provides about a 3x speedup over htmlparser2.

Update attachment

Apparently .class::before:where(...) is invalid CSS, so I added a case for that in the CSS rewriter. Also messed with the component type some more, so that you can pass in pointers to any prop no matter what.

Update attachment
Toshit
Toshit created a project
56d ago

SoM Harbor

Summer of Making client!!!

3 devlogs 1 follower
Toshit
Toshit created a project
56d ago

scramjet

An experimental interception based web proxy designed to evade internet censorship, bypass arbitrary web browser restrictions and innovate web proxy technologies. If the frontend doesn't work, try clearing all site data lol

scramjet
6 devlogs 8 followers Shipped
Toshit
Toshit created a project
56d ago

dreamland.js

Utilitarian web framework smaller than preact. <a href="https://mail.hackclub.com/" target="_blank" class="text-nice-blue hover:text-dark-blue font-medium transition-colors duration-200 cursor-pointer hover:underline">mail.hackclub.com</a> uses this! take a look at <a href="https://github.com/hackclub/theseus/blob/main/package.json" target="_blank" class="text-nice-blue hover:text-dark-blue font-medium transition-colors duration-200 cursor-pointer hover:underline">theseus package.json</a>...

dreamland.js
16 devlogs 5 followers
Toshit
Toshit joined Summer of Making
56d ago

This was widely regarded as a great move by everyone.