Sign in

Bogdan Chadkin

@trysound.io
1.4K followers 667 following 822 posts

SVGO maintainer. Building design tools and open social.

PostsRepliesMedia
Bogdan Chadkin @trysound.io · 07/09/2026
So last week I started tinkering with my own music player. UI needs some polish but I already switched to it on my phone and laptop.
020
Bogdan Chadkin @trysound.io · 29/08/2026
🎉 Saturday release! RIFM 1.1 got builtin number formatter with plenty of options so users would not need to reinvent the wheel. github.com/TrySound/rif...
Examples of createNumberFormatter usage
081
Bogdan Chadkin @trysound.io · 22/08/2026
Triaging svg-parser issues is fun. None of them reproducable and most likely have something to do with reading file with different encoding. And since svg-parser error includes repo issues url, everybody are reporting here instead of projects reading these files.
Almost all issues are parsing error and none of them can be reproduced. But often are just nothing to reproduce with.
041
Bogdan Chadkin @trysound.io · 11/08/2026
Btw the repo seems lost all opened PRs prior to the incident
Pull Requests counter shows 63 PRs but the list shows only 2 recent ones
100
Bogdan Chadkin @trysound.io · 27/06/2026
Frame of Phantom of the Opera.
010
Bogdan Chadkin @trysound.io · 25/06/2026
How about this one?
Old twitter logo with the bird
130
Bogdan Chadkin @trysound.io · 10/06/2026
Another guy approached me offering a job. We scheduled a call and right before it starts the link is updated to this. Keep an eye on this if you are looking for a job.
Screenshot of calendly with location to the following link
https://teams.live.miclesoft.com/....
3175
Bogdan Chadkin @trysound.io · 07/06/2026
Hey atproto friends, I'm having trouble with login into my app last couple days. After entering password it gets stuck on redirect page. Before the same setup worked for two months. Bluesky itself and other apps continue working for me. Locally login works as well. weareonhire.com/client-metad...
Shows "Login complete" and "You are being redirected..." screen
001
Bogdan Chadkin @trysound.io · 02/06/2026
How cool! Svelte can redefine variables deeper in the tree. It's exactly how I implemented data variables in @webstudio.is back in the day to reflect the same behavior as CSS variables. svelte.dev/docs/svelte/...
Svelte variables can override each other with nested elements
241
Bogdan Chadkin @trysound.io · 29/05/2026
Another day, another bot from linkedin tried to trick me into giving access to my machine. The account was just deleted in confirmation www.linkedin.com/in/ville-laa... Sadly open source work didn't help me to find a job but made a perfect target for this kind of attacks.
A guy contacted me on linkedin and offered a full-time/part-time job opportunityThen he described hiring process where I should publish a function into their package on npm within 10-15 minutes. Publishing permissions will be granted through my email.
2111
Bogdan Chadkin @trysound.io · 20/05/2026
Give it a try at weareonhire.com Btw the project is open source. If you want to share any ideas, feel free to open an issue. github.com/TrySound/wea...
021
Bogdan Chadkin @trysound.io · 15/05/2026
I chose another way: I described the table in Kysely and use its quite well-designed JSON query builder.
Code sample how I described contrail tables using kysely
000
Bogdan Chadkin @trysound.io · 28/04/2026
Btw welcome to weareonhire!
Screenshot of new feed with "Andy Bell joined weareonhire!" entry
110
Bogdan Chadkin @trysound.io · 27/04/2026
I'm all into dark mode. Though a few people complained it's hard to read white on dark. So I added a light mode. The switcher is simple button and and goes into system when matches user choice instead of showing 3 options.
052
Bogdan Chadkin @trysound.io · 26/04/2026
While working on resume builder, I noticed how inefficient atproto writes without batching. Uploading whole resume took 40s since each record required a separate request. Today discovered applyWrites exists in the core, though no type-safe variant in lexicons package yet. Built a wrapper around it.
Example of using applyWrites utility
2243
Bogdan Chadkin @trysound.io · 25/04/2026
New in weareonhire! Just landed the new home page with a bit of explanation why I created it and how it works. weareonhire.com Let me know if you have more ideas.
1122
Bogdan Chadkin @trysound.io · 22/04/2026
New in weareonhire! Refreshed profile page. To emphasize a personal story it shows only name and your introduction in addition to recommendations. Moved resume to a separate page. weareonhire.com
031
Bogdan Chadkin @trysound.io · 19/04/2026
New in weareonhire! Redesigned the feed to preview recommendation for more context. Made feed and profile visually more consistent. weareonhire.com
121
Bogdan Chadkin @trysound.io · 17/04/2026
New in weareonhire! Recommendations are now available for all Atmosphere users 🙌 Your recommendations are stored directly in your atproto identity and accessible from profile page or in the feed. Let's build a professional community for humans. weareonhire.com
193
Bogdan Chadkin @trysound.io · 16/04/2026
Added a little accent to weareonhire! UI repo.weareonhire.com
051
Bogdan Chadkin @trysound.io · 14/04/2026
New weareonhire! Everyone can now log in and edit their resume. Your data is stored publicly on your atmosphere identity at sifa.id namespace.
2162
Bogdan Chadkin @trysound.io · 08/04/2026
New in weareonhire! Built a date picker for year/month selection to make typing dates more plesant. Feedback is welcome. repo.weareonhire.com
061
Bogdan Chadkin @trysound.io · 07/04/2026
The first 10 members have joined weareonhire! weareonhire.com
Screenshot of weareonhire.com home page
2142
Bogdan Chadkin @trysound.io · 06/04/2026
Turns out I can edit my CV and print the right size from my phone. Browsers are really handy these days.
1132
Bogdan Chadkin @trysound.io · 05/04/2026
new in weareonhire! onboarding for new users - drop your CV to build your profile - recommend back your inviter - invite peers with your recommendations
2111
Bogdan Chadkin @trysound.io · 04/04/2026
Doesn't happen all the time. A few users reported this to me
screenshot with broken captcha when user is trying to signup
010
Bogdan Chadkin @trysound.io · 04/04/2026
New in weareonhire! I switched the default PDS for new accounts to npmx.social since bsky.social has a broken CAPTCHA that's blocking sign-ups. npmx.social is a better EU based alternative for our community.
Screenshot of weareonhire.com home page
3141
Bogdan Chadkin @trysound.io · 02/04/2026
New in weareonhire! Upload your PDF resume and we'll build your profile automatically.
2112
Bogdan Chadkin @trysound.io · 01/04/2026
Meet weareonhire! or WAOH! an invite-only talent community, moderated by its members. The invite-only approach slows growth intentionally, preventing the typical decline in community quality. Every invite is public and traceable back to the founding member, creating accountability and trust.
2151
Bogdan Chadkin @trysound.io · 23/03/2026
Weekend project: a minimal CV builder. Recruiters often only look the first page, so I added compact print styles.
3272
Bogdan Chadkin @trysound.io · 19/03/2026
I've been sending my CV through these platforms for months. Today I decided to check how it actually appears on the recruiter's side. Turns out, only Workable let candidates register. Others hides behind a "Request a Demo" wall, because these platforms are built for recruiters, not job seekers.
Screenshot of ashby and a list of its competitors
192
Bogdan Chadkin @trysound.io · 18/03/2026
Playing with atproto a little. Hackernews style platform can be an interesting alternative to bluesky UI.
1112
Bogdan Chadkin @trysound.io · 20/02/2026
Added Eye Dropper support to hdr-color-input package. Note: Currently available in Chromium-based browsers only (Chrome, Edge, Opera, etc.). Check it out and give it a star github.com/argyleink/cs...
1202
Bogdan Chadkin @trysound.io · 16/02/2026
Been using Engramma myself and kept getting annoyed having to open a popover just to rename a token. So I fixed it. Now you just double click or hit Enter to start renaming.
152
Bogdan Chadkin @trysound.io · 12/02/2026
Excited to share a new feature I worked on for color-input. We just added an interactive area picker that makes color navigation much smoother. It supports oklch, hsl, and hsv color spaces, with the area automatically adapting to your selection. Would love your feedback
160
Bogdan Chadkin @trysound.io · 09/02/2026
Getting some progress with area in color picker
021
Bogdan Chadkin @trysound.io · 07/02/2026
Found on interesting bug in firefox. Color function with none component is not interpolated within gradients. Though it works with oklch. bugzilla.mozilla.org/show_bug.cgi...
A screenshot demonstrating this bug in firefox
031
Bogdan Chadkin @trysound.io · 04/02/2026
If you find Engramma (design tokens app) interesting, give it a like on @npmx.dev npmx.dev/package/engr...
150
Bogdan Chadkin @trysound.io · 03/02/2026
Love how with a little sprinkle of CSS you can transition elements between pages. All it takes is @view-transition { navigation: auto } and view-transition-name defined on the element.
1190
Bogdan Chadkin @trysound.io · 02/02/2026
🎉 Open Props 🤝 Engramma 🎉 Excited to share that Engramma now ships with Open Props as a built-in preset for design tokens. Open Props gives you a solid, battle-tested foundation of CSS custom properties that you can easily alias to your own semantic token set.
2153
Bogdan Chadkin @trysound.io · 31/01/2026
🎉 Open Props now supports the stable Design Tokens specification! import designTokens from "open-props/resolver" I added a dedicated "resolver" format to avoid conflicts with existing token setups. Later, I'll explore adding a semantic layer on top of this foundation.
Screenshot of resolver.json in npmx.dev
2344
Bogdan Chadkin @trysound.io · 27/01/2026
Playing with a custom Figma plugin. It seemed pretty straightforward, until I tried to use an external library. If you even dare to have import() in a TSDoc, Figma punishes you with a cryptic error (they scan for imports with a regex). Still, I managed to get it running.
040
Bogdan Chadkin @trysound.io · 26/01/2026
There are few ideas to integrate Engramma into various tools. Now you can use Engramma on your website. The new engramma package packs the whole app in a Custom Element that you can drop into a dialog and use to edit design tokens extracted from CSS variables directly on the page.
1134
Bogdan Chadkin @trysound.io · 23/01/2026
Using scroll snap to improve mobile support in my design tokens app. Very cool feature!
020
Bogdan Chadkin @trysound.io · 21/01/2026
Just switched from zod to zod mini in Engramma and cut my app size by 47 kB which I think is quite big number for just one library and worth a switch.
1303
Bogdan Chadkin @trysound.io · 16/01/2026
Done, you can try now 😀
110
Bogdan Chadkin @trysound.io · 16/01/2026
Announcing Design Token Sets in Engramma: global token categories that separate foundational, semantic, and component specific design tokens without polluting generated CSS variable names. --foundation-colors-blue → --colors-blue --semantic-colors-primary → --colors-primary
273
Bogdan Chadkin @trysound.io · 11/01/2026
Added mobile support to Engramma. Now you can preview design tokens right from your phone.
273
Bogdan Chadkin @trysound.io · 08/01/2026
The W3C Design Tokens specification was released recently, and many tools and Figma plugins haven’t migrated yet. Engramma can now import legacy token formats and convert them to the new standard.
3175
Bogdan Chadkin @trysound.io · 05/01/2026
Customizable select elements are fantastic. Just tried them for the first time in Engramma. I reused the same atom styles as aliases and menus and it just works. width: anchor-size(inline) makes the popover stretch like the system select (can’t really call it “native” anymore 😉).
1161