梁海 Liang Hai
banner
lianghai.dev
梁海 Liang Hai
@lianghai.dev
https://lianghai.dev (That’s the Slow Horses staircase in the banner pic, in case you were wondering.) #Unicode #OpenType #Python #TypeScript #Svelte #Astro #Swift
Reposted by 梁海 Liang Hai
It’s so satisfying to vote against Andrew Cuomo again.
October 25, 2025 at 8:29 PM
@atila.io, after our brief chat, I realized that it’s quite unusual for you guys to have to deal with bidi issues from the level of Solid or SolidStart. Can you have a look at this article from W3C and elaborate a bit about what exact problems you guys are facing? www.w3.org/Internationa...
Structural markup and right-to-left text in HTML
How should I use the dir attribute to set text direction on structural elements in HTML?
www.w3.org
October 13, 2025 at 9:14 PM
@danielroe.dev, it was great to meet you and climb together! – So about the font subsetting situation:

- The current best practice is likely HarfBuzz (HB)’s subsetting API (harfbuzz.github.io/harfbuzz-hb-...), which is written in C++ and has a CLI, hb-subset (harfbuzz.github.io/utilities.ht...).
October 13, 2025 at 9:02 PM
Reposted by 梁海 Liang Hai
you can sponsor @e18e.dev through GitHub Sponsors or OpenCollective

these funds will primarily be used for two things:

- distributed to projects/individuals in the wider JS community
- development of community projects/tools

thanks so much to those of you who already sponsor us 💙
e18e - Ecosystem Performance - Open Collective
The e18e community has the aim of improving performance of tooling and packages in the JavaScript ecosystem.
opencollective.com
October 13, 2025 at 11:26 AM
Reposted by 梁海 Liang Hai
Yesterday was CourtBouillon 5-year anniversary 🎂

As each year, we take some time to see what happened during the year on the projects (features, money…), and to draw the path for the next one.

Here’s the rewind of this year!

↘️
www.courtbouillon.org/blog/00059-f...
CourtBouillon − Five Years of CourtBouillon
Authentic people growing open source code with taste
www.courtbouillon.org
October 13, 2025 at 9:01 AM
@danielroe.dev: Signing up for the bouldering session on Saturday!
October 10, 2025 at 8:48 PM
Got this cutie from @todde.tv’s Vite quiz at #ViteConf!
October 10, 2025 at 3:33 PM
Solid advice from @atila.io at #ViteConf.
October 10, 2025 at 10:44 AM
Reposted by 梁海 Liang Hai
Want to meet the Astro core team? Come join us for some drinks and a chat in Amsterdam on Saturday — sponsored by @netlify.com!

Register here: luma.com/fbmyfx30
Astro Happy Hour · Luma
Astro is coming to Amsterdam for ViteConf and we'd love to meet you! Join us for a happy hour, generously sponsored by Netlify. The Astro core team is meeting…
luma.com
October 8, 2025 at 12:48 PM
A panel chat after the Vite documentary’s premiere today at #ViteConf, featuring @antfu.me or “The Fu”, among others.
October 9, 2025 at 10:35 PM
Reposted by 梁海 Liang Hai
"Let's hear it for the UN of Javascript!

Vite: The Documentary is finally here.

If you missed the premiere, it's OK!!! Here's the link so you can watch it again, and again and again.

youtu.be/bmWQqAKLgT4 "
Vite: The Documentary
YouTube video by CultRepo
youtu.be
October 9, 2025 at 8:35 PM
Really impressive how bad this is. Reeks of US corporate superficiality. Even worse than Unicode Consortium’s rebranding some year ago. www.w3.org/press-releas...
The World Wide Web Consortium (W3C) adopts a new logo to signal positive changes | 2025 | Press releases | W3C
W3C is rolling out a new logo, following W3C’s formation in 2023 as a non-profit, public-interest organization, and the recent release of strategic objectives to support W3C’s roadmap.
www.w3.org
October 2, 2025 at 1:18 AM
Fucking hell. Turned out I’m not insane – indeed Safari and Chrome do blend mode calculation in the display’s color profile, not sRGB: danielcwilson.com/blog/2020/03...
When 255 × 0 does not Equal Zero
A discussion around blend modes in different color spaces, and where their math happens on the web
danielcwilson.com
July 26, 2025 at 11:44 PM
Reposted by 梁海 Liang Hai
In one month, Node.js 18 reaches EOL. Vite and a lot of your dependencies will release majors requiring Node.js 20+. Please update as recommended now so you are prepared to jump into greener fields. Vite 4 will also stop receiving security patches after the next major, so please jump to latest too 🙏
New @nodejs.org 18.20.8 release. This is the last planned release of Node.js 18 before it reaches End-of-Life at the end of April 2025. You are recommended to update to Node.js 20 or 22 to continue to receive security updates after that date.
nodejs.org/en/blog/rele...
Node.js — Node v18.20.8 (LTS)
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
March 27, 2025 at 2:38 PM
Class 2 assignment of @robstenson's Coldtype course: "modify the drumkit.py file to look different". Finished before Sunday midnight – two days early! Sound and font (Obviously Variable) provided by the course.
March 9, 2025 at 10:54 PM
Reposted by 梁海 Liang Hai
i’ve seen shitposting you people wouldn’t believe
March 8, 2025 at 8:01 PM
Reposted by 梁海 Liang Hai
I’m so excited to share this project of mine! 🚲 ❤️

Super grateful to the generous support from @bikemn.bsky.social, @cyclehoop.bsky.social & the Lyndale Neighborhood Association to make this idea a reality.

Minneapolis: Want to rent a cargo bike?

Follow @mplscargobikelibrary.com !
March 8, 2025 at 2:47 PM
Reposted by 梁海 Liang Hai
The writing this season is a little too on-the-nose
The US was the sole UN member state to vote NO on a resolution declaring an International Day of Hope
March 9, 2025 at 2:17 AM
Someone at Microsoft thought it's such a brilliant idea to use a generic tile for everything and concatenate lists together so it looks really neat.
March 8, 2025 at 9:31 PM
Figured out how to enforce this italic style of function parameters that I really like. Now I can use any theme!

(Dracula Theme Official, which is in the screenshots, and SynthWave '84 are some choices that come with this style. But sometimes I need to use a light theme.)
March 7, 2025 at 9:38 PM
Reposted by 梁海 Liang Hai
The article I wrote at the end of last year was just republished on the official Astro blog! Big thanks again to @sarah11918.rainsberger.ca for reaching out 🙏
January 17, 2025 at 1:27 PM
Reposted by 梁海 Liang Hai
I _believe_ that www.viamichelin.com, a SvelteKit app, came first. Though since michelin.com uses Astro with Svelte, we can't be too mad. (I guess we're the first framework with two Michelin Stars?)

Anyway, welcome to the club ⭐
February 6, 2025 at 3:23 PM
Reposted by 梁海 Liang Hai
Oracle justified its JavaScript trademark by claiming Node.js — now it wants that ignored
#FreeJavaScript

deno.com/blog/deno-v-...
Oracle justified its JavaScript trademark with Node.js—now it wants that ignored
Oracle filed a motion to dismiss in response to Deno’s petition to cancel its “JavaScript” trademark. But instead of addressing the real issue—that JavaScript is an open standard with multiple indepen...
deno.com
February 4, 2025 at 10:14 PM
Reposted by 梁海 Liang Hai
New Article about the story and interconnectedness of the three Mediterranean cultures that led to the creation of La Grotesque.

tptq-arabic.com/articles/the...
February 3, 2025 at 1:18 PM