HN user

claviska

833 karma

Just a guy with a laptop and a dream.

Posts29
Comments199
View on HN
tonguetype.app 2mo ago

Show HN: TongueType – Local, privacy-focused Whisper dictation for macOS

claviska
5pts1
www.abeautifulsite.net 9mo ago

Quiet UI is now open source

claviska
2pts0
www.abeautifulsite.net 9mo ago

Quiet UI – My Creative Outlet

claviska
3pts0
twitter.com 10mo ago

Popular npm package compromised in a sophisticated attack affecting 40+ packages

claviska
2pts1
www.abeautifulsite.net 11mo ago

How I Use GitHub Issues

claviska
3pts0
fontawesome.com 11mo ago

Show HN: Font Awesome 7 launches with new icon packs

claviska
3pts0
bugzilla.mozilla.org 2y ago

Firefox bug gets fixed after 25 years

claviska
346pts168
color.surf 2y ago

Show HN: color.surf – a fun tool to access your favorite Tailwind colors

claviska
2pts1
www.abeautifulsite.net 4y ago

Flash of Undefined Custom Elements (fouce)

claviska
2pts0
shoelace.style 4y ago

Shoelace: More than 50 custom HTML elements that work with all frameworks

claviska
2pts2
github.com 4y ago

React merged experimental support for custom elements (web components)

claviska
1pts0
www.abeautifulsite.net 4y ago

Bulletproof Components

claviska
3pts0
news.ycombinator.com 5y ago

Ask HN: I quit my job and my employer won’t take their equipment back

claviska
22pts49
twitter.com 5y ago

Mozilla has laid off their dev tools people and the entire MDN team

claviska
314pts178
shoelace.style 6y ago

Show HN: Shoelace 2.0 – a forward-thinking library of web components

claviska
4pts1
twitter.com 6y ago

Show HN: I made a [terrible] rap about deploying on Friday

claviska
3pts1
www.macrumors.com 7y ago

Airmail suddenly requires a subscription for push notifications

claviska
25pts9
www.surrealcms.com 7y ago

Surreal CMS is now free for personal, educational, and non-profit websites

claviska
6pts3
www.surrealcms.com 7y ago

Show HN: I Created a Code Beautifier in Two Days

claviska
2pts0
www.surrealcms.com 7y ago

Show HN: An HTML, CSS, and JavaScript Beautifier

claviska
3pts1
www.surrealcms.com 7y ago

Lessons Learned from a 10 Year Old SaaS

claviska
4pts0
shoelace.style 8y ago

Shoelace.css – a free CSS boilerplate

claviska
2pts1
labs.abeautifulsite.net 8y ago

Shoelace.css – a CSS starter kit

claviska
13pts2
postleaf.org 9y ago

Open source blogging app Postleaf launches beta

claviska
6pts0
www.postleaf.org 9y ago

SHOW HN: I rebuilt my blogging app on Node.js and just open sourced it

claviska
76pts18
www.postleaf.net 9y ago

Show HN: Postleaf – Open source blogging platform

claviska
44pts53
www.kickstarter.com 10y ago

Show HN: An alternative to WordPress

claviska
2pts0
www.kickstarter.com 10y ago

I built [another] blogging platform

claviska
2pts0
www.abeautifulsite.net 11y ago

I'm taking “startup” back

claviska
2pts0

They rejected mine too for the exact same reason, despite press-to-talk being a legitimate accessibility issue.

I wrote about this here [1], and even called out some of the most common disabilities that clearly benefit from it.

They also don’t allow microphone access from keyboard extensions in iOS, which prevented me from shipping an iPhone target (that I really wanted for myself tbh).

It’s a shame and I can only assume they’re trying to protect their built-in dictation, which historically has been laughably bad.

[1] https://tonguetype.app/accessibility

Thank you! For the components, I use the Custom Elements Manifest Analyzer to get data from JSDoc comments and TypeScript. This populates properties, events, methods, slots, etc. All the examples and other pages are hand-made. Docs are generated with 11ty.

I launched Quiet UI this week:

https://quietui.org/

It prioritizes accessibility, longevity, performance, and simplicity.

With the autoloader, one script tag loads components dynamically without downloading the entire library. (npm also available.)

Theming uses color-mix() and OKLAB to create uniform color palettes from a single CSS property. Adaptive palettes are used for dark mode.

All form controls are form-associated via ElementInternals and work with native validation APIs (required, pattern, etc.).

Dialogs, popovers, tooltips, etc. use Popover API for top-layer access without having to portal or hoist.

Some of the more fun components include: Joystick, Stamp, Mesh Gradient, Flip Card, Random Content, Intersection Observer, Typewriter, Lorem Ipsum, Slide Activator

The library is free for personal, educational, non-profit use. Commercial use requires a license.

Shoelace has matured into Web Awesome and has a whole team behind it, as well as an attractive pro offering. Quiet is my creative outlet. Some components from Quiet have been adapted to Web Awesome, but many probably don't make sense to such as joystick, mesh gradient, stamp, etc.

The theming layers are completely different. Web Awesome's theming system is more robust, with over a dozen pro themes already available with interchangeable, professionally-curated palettes. In contrast, Quiet has just one theme with a palette that's generated with color-mix().

Oh, hey. I made that :D

I’ve been quietly working on this for the last two years. It started as a creative outlet and a way to discover and learn modern Web APIs. It ended up as an addiction.

I built Quiet from scratch to improve my design skills. To learn new APIs. To try different approaches that may or may not in my main focus, which is Web Awesome.

I learned so many new things building it. It let me explore newer APIs such as `color-mix()`, the Popover API, and Element Internals. It let me use newer CSS features such as `:has()` and nesting before they were baseline. It taught me about color, especially OKLAB and OKLCH, which is still a mysterious box of wonder, but slightly less intimidating now.

Quiet has given me the freedom to explore ideas that make me a better developer and designer, many of which would be out of scope for a more established product.

I’d love to hear what you think, and I'm happy to answer any questions!

I had a similar but more concerning experience. I enabled family sharing (years ago when it was newer) and suddenly my spouse had access to many (all?) of MY passwords in HER keychain. I never knowingly granted access or put any passwords in a non-personal group — it just happened like magic.

I loved mine. Found one at a yard sale as a kid (with the book!) and taught myself how to program with it. Eventually, I learned about QBASIC and my world — and love for programming — got so much bigger.

This has been fixed in a PR that made it into React’s experimental release. They’ve been promising support since 16, but keep bumping it back. It’s now slated for React 19. You can read the discussion here. [0]

Per Dan’s comment [1], they began rolling out the flag to test support at Meta in February and, barring any major problems, they’re still targeting 19.

0: https://github.com/facebook/react/issues/11347

1: https://github.com/facebook/react/issues/11347#issuecomment-...

The goal is to handle as much accessibility as possible with smart defaults and by making it easy for users to get right. Currently, all aria stuff is handled internally the components. For example, look at <sl-input> and you’ll see that the input, label, and help text are automatically linked in the shadow root. The minimum the user needs to provide is a label and assistive devices work as expected.

Creator of Shoelace [0] here. As someone who’s built multiple design systems and component libraries, I assure you that unstyled (or “headless”) components are often much more time consuming and painful to adopt than those with good default styles.

That said, I commonly find that most folks don’t want unstyled components because it’s quite a bit of work to style every single state of every single component. Most people just won’t do it or, if they try, they don’t do it right and they don’t do it completely.

What many folks do want are components that have simple, generic styles you can quickly tweak to match your site/app using a skill you already know: CSS. (This is something you can do with Shoelace’s 50+ web components already, but we’re working to make it even easier with additional CSS custom properties.)

[0] https://shoelace.style/

Years ago, I stupidly got rid of my entire South Park DVD collection because they were on Netflix. Until they eventually weren’t. Chris was right.

15.ai 4 years ago

I appreciate the intent, and I understand that many people will do the wrong thing so this was probably an attempt to get such folks to actually read and adhere to the TOS, but the obnoxious consent dialog with a mandatory countdown turned me off. It’s probably not effective, either.

On desktop, maybe I’d open dev tools and remove it. On mobile, I won’t be bothered. I hate that this is what the web has become and I choose to simply miss out on websites that behave this way.

The author mentions:

I miss Away Messages. This nostalgia is layered in abstraction; I probably miss the newness of the internet of the 1990s, and I also miss just being … away.

The difference is that Slack has a mobile app so when you step away from your computer, you’re not really “away” like you used to be before smartphones were a thing.

Yes, you can disable notifications or try to ignore them, but that’s not the author’s point. I read it more as them longing for “a better time,” similar to an expression of nostalgia for the simplicity of one’s childhood.

Some of the best experiences of my childhood were learning how to code, which ultimately turned into a career that has opened up more opportunities and experiences than I would have known otherwise.

Similar story, but with tea. I used to dump sugar into it but eventually I just stopped. Now I have plain black tea every morning. I really can’t stand drinking it with sugar now.

I also ditched soda (except for an occasional mixed drink) and when I want something cold and fizzy I pour a can of seltzer water with lime, orange, cherry, etc. It’s a game changer if you can kick the sugar habits.