Sign in

Remco Haszing

@remcohaszing.nl
937 followers 254 following 1.4K posts

Open source software developer, cat servant, coffee to code converter, metalhead 🤘 remcohaszing.nl github.com/remcohaszing

PostsRepliesMedia
Remco Haszing @remcohaszing.nl · 21h
This vscode-icons release is huuuge! Special thanks to GitHub user NaufalK25 who contributed a ton of new icons in this release and the one before it.
github.com
Release v13.0.0 · vscode-icons/vscode-icons
What's Changed feat(icon): add livekit icon by @NaufalK25 in #4128 fix(icon): add missing ts, cts, and mts support for prettier by @NaufalK25 in #4133 feat(icon): add GLua language ID to Lua by @D...
160
Reposted by Remco Haszing
Kilian Valkhof @kilianvalkhof.com · 29/09/2026
IT HAS DARK MODE
Two panes showing the new example.com, one in light mode and the other in dark mode
191
Remco Haszing @remcohaszing.nl · 27/09/2026
I recall someone wrote a tool to see if a GitHub account it a slop bot or not. What’s the name / link of the tool again?
100
Remco Haszing @remcohaszing.nl · 25/09/2026
Cool! My first security advisory from a third party for one of my personal projects! Oh wait… it’s LLM spam from a new GitHub account
160
Remco Haszing @remcohaszing.nl · 24/09/2026
LLMs are tools, not people. This means they are not authors either. They are not the author of your git commits, you are. It’s good to disclose if you used an LLM to make edits, but the commit author field is not the right place. That’s just a weird place to put an ad for the tool.
1275
Remco Haszing @remcohaszing.nl · 22/09/2026
I made some significant changes to mdx-content-mapper. It now uses micromark tokens instead of mdast. This makes the mappings much more stable and gives better handling if certain syntax errors. But my cat won’t allow me to move off the couch, so I won’t make a release today.
120
Reposted by Remco Haszing
Cynthia 🐈 @cynthia.dev · 22/09/2026
new smol-toml release who dis - Full Temporal support - 2x performance improvements - New options for safe handling of `__proto__` - Lots of correctness fixes and additions github.com/squirrelchat...
github.com
Release v1.9.0 · squirrelchat/smol-toml
Huge update!!! This is most likely the largest update the library received since its release, with lots of new features and improvements. Performance improvements Significant parts of the internal ...
251
Reposted by Remco Haszing
Artem Zakharchenko @kettanaito.com · 21/09/2026
This is such a silly mistake and yet I see you making it all the time in your tests. ❌ Do NOT run cleanup after assertions ✅ Schedule the cleanup via hooks or use Disposable Objects A seemingly tiny change that'll have tremendous impact on your tests, especially memory-wise.
Code snippets illustrate proper and improper cleanup methods for WebSocket tests, emphasizing memory management in asynchronous operations.
2364
Remco Haszing @remcohaszing.nl · 20/09/2026
Why do people use the "prepublishOnly" and "prepare" npm script? I feel like they serve no real purpose, but people use them because they’re used and written about a lot.
300
Remco Haszing @remcohaszing.nl · 18/09/2026
Cool! Apparently my kilt fits again somehow. I guess I'm not wearing pants tomorrow
010
Remco Haszing @remcohaszing.nl · 18/09/2026
JavaScrip quiz: Which lines contain function declarations? 1: const a = function() {} 2: const b = function c() {} 3: const d = () => {} 4: export default function() {} 5: export default function e() {} 6: export default () = {}
320
Reposted by Remco Haszing
Remco Haszing @remcohaszing.nl · 06/09/2026
I published a TypeScript content mapper for CSS modules. This gives you type-safety and definitions when importing CSS in TypeScript. github.com/remcohaszing...
On the right is a pane of CSS code. On the left is a pane of TypeScript code that imports the CSS as a module. The hover info of the imported CSS class shows the CSS block. There’s also an unknown class name, which has a red squiggly underline.
6808
Remco Haszing @remcohaszing.nl · 07/09/2026
Can characters be escaped in code blocks in JSDoc comments? I want something like this: /** * ```js * /* This is a comment inside a code block inside a comment */ * ``` */ It only has to work for TypeScript, not every JSDoc tool out there.
281
Remco Haszing @remcohaszing.nl · 06/09/2026
I published a TypeScript content mapper for CSS modules. This gives you type-safety and definitions when importing CSS in TypeScript. github.com/remcohaszing...
On the right is a pane of CSS code. On the left is a pane of TypeScript code that imports the CSS as a module. The hover info of the imported CSS class shows the CSS block. There’s also an unknown class name, which has a red squiggly underline.
6808
Reposted by Remco Haszing
NullVoxPopuli @nullvoxpopuli.com · 03/09/2026
I'm declaring TypeScript 7 for Ember: ready At work, on the 3 million line monolithic package, I'm seeing ~ 4m40s -> 12s a ✨ 23x ✨ speed boost
3658
Remco Haszing @remcohaszing.nl · 02/09/2026
`assert()` style test assertions are so much better than `expect()`. I really don’t mind the stylistic choice. But `assert()` style assertions help TypeScript narrow down types, whereas `expect()` style assertions can’t do that.
290
Remco Haszing @remcohaszing.nl · 31/08/2026
How do people feel about showing 2 LSP definitions for 1 character? I really like how definitions are working out for headers, strong, etc. But in case of markdown lists, the <ul> is defined by the same token that creates the <li>
A markdown list where the first definition info is show for the first dash. Two definitions are shown: "ul" and "li"

The markdown content is:

- Pokéball
- Great ball
- Ultra ball

1. Bulbasaur
2. Ivysaur
3. Venusaur
4. Charmander
5. Charmeleon
6. Charizard
7. Squirtle
8. Wartortle
9.  Blastoise
10. Caterpie
11. Metapod
12. Butterfree
120
Reposted by Remco Haszing
webpack module bundler @webpack.js.org · 29/08/2026
webpack 5.110.0 🎉 ⚡ New performance hints suite 🎨 Native CSS is the way forward — css-loader, style-loader & mini-css-extract-plugin deprecated 🗜️ Built-in CSS & HTML minification 📦 nodeModules externals preset 🌳 Better tree shaking & scope hoisting webpack.js.org/blog/2026-08...
webpack.js.org
Webpack 5.110 | webpack
webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset.
0174
Remco Haszing @remcohaszing.nl · 29/08/2026
I’m now seeing type definitions, hover info, type errors, etc, for h1-h6 headers in MDX that are overridden in mdx-components.tsx This uses the TypeScript content mapper Atom span maps. I believe Volar was never even be able to do this. But also, I never tried that. I might have overlooked it.
VSCode showing a JSX definition for a level 2 markdown heading inside MDX and a type error for a level 4 markdown heading based on an mdx-components fole on the right.
1150
Remco Haszing @remcohaszing.nl · 28/08/2026
I just released the final version of the Volar based @mdx-js/typescript-plugin and the last version of the language server and VSCode extension that will include this. Newer versions will use the new TypeScript 7.1 content mapper.
181
Reposted by Remco Haszing
NullVoxPopuli @nullvoxpopuli.com · 26/08/2026
Ember now has preliminary TS7 support ~ via the content-mappers feature that merged in TS last week Testers wanted! (requires TS Nightly)
2147
Remco Haszing @remcohaszing.nl · 25/08/2026
I added props inference for @nextjs.org in mdx-content-mapper. Also type information is inferred from mdx-components.tsx (or any providerImportSource of your choice). I could also infer types for known exports, but maybe that’s taking it too far?
Hover information in an MDX file that shows type information about the props of the Next.js page it renders.Hover information in an MDX file that shows the inferred type of the <Button> component from mdx-components.tsx.
130
Remco Haszing @remcohaszing.nl · 22/08/2026
Oops, I accidentally added type checking for code blocks in regular markdown files in addition to MDX. Ah well…
Markdown code with a TypeScript code block. The TypeScript code shows a highlighted type error and some hover information.

## Code Example

The following code has a type error!

```ts
/**
 * This is a code example.
 */
export function getNumber(): number {
  return 'This is not a number'
}




getNumber()
```
1594
Reposted by Remco Haszing
Marvin Hagemeister @marvinh.dev · 21/08/2026
The new content-mapper API in tsgo has just been merged and will be part of TS 7.1 It's what every framework dev has dreamed of for years. Really excited about this becoming a reality! github.com/microsoft/ty...
github.com
Content mappers by andrewbranch · Pull Request #4712 · microsoft/typescript-go
Implements microsoft/TypeScript#63800 (comment) Overview Content mappers are external integrations that allow TypeScript to include otherwise unsupported file types in a program. They transform a f...
4395
Reposted by Remco Haszing
Jiahan Chen @chenjiahan.bsky.social · 20/08/2026
The TypeScript content mappers PR just merged and is likely to land in 7.1 🎉 This could open a new chapter for everything built on and around TypeScript github.com/microsoft/ty...
github.com
Content mappers by andrewbranch · Pull Request #4712 · microsoft/typescript-go
Implements microsoft/TypeScript#63800 (comment) Overview Content mappers are external integrations that allow TypeScript to include otherwise unsupported file types in a program. They transform a f...
3448
Remco Haszing @remcohaszing.nl · 17/08/2026
My editor using mdx-content-mapper is now showing TypeScript info for frontmatter and code blocks.
An MDX file with two JavaScript code blocks. One is hovered and shows information about the code. The other highlights a type error.An MDX file with YAML frontmatter data and a variable named frontmatter. Hover information for the frontmatter variable shows the TypeScript type of the frontmatter data.
1275
Reposted by Remco Haszing
patak @patak.cat · 17/08/2026
it's raining 🥹
2221
Remco Haszing @remcohaszing.nl · 17/08/2026
The sky is gray. Temperatures have dropped. Pura is experiencing rain for the first time. This is the best weather we’ve had in weeks, maybe months.
130
Remco Haszing @remcohaszing.nl · 16/08/2026
I just published an initial draft of an MDX content mapper. Content mappers are a new type of plugin system for an upcoming version of TypeScript that will allow you to type check MDX, Vue, Astro, etc. The approach is inspired by, but doesn’t use Volar. Thanks @andrewbran.ch for working on this! 💖
github.com
GitHub - remcohaszing/mdx-content-mapper: A TypeScript content mapper for MDX content
A TypeScript content mapper for MDX content. Contribute to remcohaszing/mdx-content-mapper development by creating an account on GitHub.
0202
Reposted by Remco Haszing
Cards Against Humanity @cardsagainsthumanity.com · 12/08/2026
www.SadLittleBitchWithNoFriends.com
311077563
Remco Haszing @remcohaszing.nl · 07/08/2026
I just had a cat run installed for Pura. I’m really happy with it, but also mixed feelings because it was supposed to be for Impa too.
Cat sitting on top of a table, looking from a balcony in a cat run
030
Reposted by Remco Haszing
Hidde @hidde.blog · 02/08/2026
🔗 From today, EU regulation around labeling AI generated content goes into effect. The Commission provides icons that can be used digital-strategy.ec.europa.eu/en/policies/...
digital-strategy.ec.europa.eu
EU Icons for labelling AI-generated content
Deployers of generative AI systems can use the EU set of icons to label certain AI-generated content, in accordance with the AI Act transparency rules.
64621
Remco Haszing @remcohaszing.nl · 03/08/2026
I feel like the config file situation in JS-land has gotten out of hand. Tools check for {.config/tool,.toolrc,config.tool}.{cjs,js,mjs,cts,ts,mts,json,jsonc,json5,yaml,yml,toml} That’s 3*12=36 locations to check.
1141
Reposted by Remco Haszing
Daniel Fedor @dcfedor.bsky.social · 24/07/2026
Blue Bottle Games, as a policy, does not use generative AI. It's something we've discussed as a team, weighing the pros and cons, and ultimately, we decided it was not for us. Recently, while chatting with a colleague, she mentioned it was useful hearing our reasoning. So: Sharing time! 1/12
121766722
Reposted by Remco Haszing
Josh Goldberg @joshuakgoldberg.com · 24/07/2026
Mocha is donating $20k to more active open source projects: Knip, @nodejs.org, Prettier, and Unified. 🤎 mochajs.org/blog/2026-co...
mochajs.org
2026 Community Sponsorships
Today, we are happy to announce that Mocha will be donating $5,000 each to four different community projects, for a total of $20,000 donated to the modern JavaScript community.
2788
Remco Haszing @remcohaszing.nl · 18/07/2026
After a week long struggle for her life, Impa has passed away.
A black cat standing on a scratch pole
7130
Remco Haszing @remcohaszing.nl · 09/07/2026
The `using` keyword pretty much made `beforeEach` / `afterEach` obsolete
180
Reposted by Remco Haszing
rossipedia @rossipedia.com · 08/07/2026
Reminder that reading code written by another is an order of magnitude harder than writing it yourself.
0131
Reposted by Remco Haszing
TypeScript @typescriptlang.org · 08/07/2026
📣 The moment is here. 📣 TypeScript 7 is officially released! 7️⃣ devblogs.microsoft.com/typescript/a...
devblogs.microsoft.com
Announcing TypeScript 7.0 - TypeScript
Today we are proud to announce the availability of TypeScript 7, a 10x faster native port of TypeScript! Since its early days, TypeScript has promised to
15617156
Remco Haszing @remcohaszing.nl · 02/07/2026
In React, array index as key is fine. Don’t let the linter fool you. But also, know when it’s not fine. The pitfall isn’t using index as key, the pitfall is not knowing when it’s ok.
3121
Remco Haszing @remcohaszing.nl · 01/07/2026
2020: How thoughtful! A new contributor made a PR with a proper description with a summary, explanation of the issue, and reasoning for the solution 2026: Ugh, someone used an LLM to fix a typo
0170
Remco Haszing @remcohaszing.nl · 16/06/2026
I just tried FireFox as a PDF editor and it’s really good! I think I will make this my default PDF editor. No more using a Windows VM to use Acrobat Reader. Editing PDFs is still a horrible idea though. Don’t make people do that.
290
Remco Haszing @remcohaszing.nl · 13/06/2026
It’s both sad and fun to see how poorly emoji are supported in SSIDs
100
Remco Haszing @remcohaszing.nl · 12/06/2026
Apparently Rolldown handles bundling to ESM better than esbuild. The mdxlint VSCode extension is now ESM 🎉
050
Reposted by Remco Haszing
Bramus @bram.us · 11/06/2026
YES, Dark Mode Toggles _should_ be a browser feature. I wrote about this before: brm.us/dark-mode-ov... Find the link to the Chrome Bug in the post, and hit the star next to it to "upvote" the bug. (I even have a prototype extension to provide this for you: brm.us/chrome-dark-...) #cssday
brm.us
Dark Mode Toggles Should be a Browser Feature
When implementing Dark Mode and ways to toggle it, developers currently need to duplicate code and roll their own toggle implementation. What if, instead, browsers would take care of all that?
610023
Reposted by Remco Haszing
rossipedia @rossipedia.com · 11/06/2026
This is the Way™ the-decoder.com/landmark-ger...
the-decoder.com
Landmark German ruling declares Google's AI Overviews are Google's own words and makes it liable for false answers
A German regional court has ruled that Google is directly liable for the content of its AI search overviews. According to the court, previous limited liability protections for search engine operators ...
0286
Remco Haszing @remcohaszing.nl · 10/06/2026
We really need the navigator.preferences web API. Even developer.chrome.com suffers from this missing API.
developer.chrome.com
Chrome for Developers
Helping you build, grow and innovate on the web.
010
Reposted by Remco Haszing
Titus 🇵🇸 @wooorm.com · 08/06/2026
Hello friends and welcome to another “how’s ESM vs CJS doing?!” A big win this time, at a year of `require(esm)` available! 38.0% of the popular npm packages now have ESM, up from 33.4% half a year ago. ESM-only is up from 12.6% to 16.0%. Particularly this non-dual, “vanilla” growth is very big!
Graph showing the status, in raw CSV:

```csv
date,total,esm,dual,faux,cjs
2021-08-24,5617,341,95,832,4349
2021-11-09,5647,411,119,809,4308
2022-08-01,5734,496,207,791,4240
2022-11-04,5747,518,216,785,4228
2023-05-29,6240,630,417,783,4410
2023-11-22,6818,734,510,881,4693
2024-05-27,7042,819,736,826,4661
2024-11-27,8087,942,1152,843,5150
2025-06-05,8677,995,1573,859,5250
2025-12-04,14159,1779,2947,1522,7911
2026-06-08,16231,2590,3574,1689,8378
```
911123
Remco Haszing @remcohaszing.nl · 07/06/2026
Random thought: You could add a shebang to test files and make them executable.
1100
Remco Haszing @remcohaszing.nl · 03/06/2026
vscode-languageserver-types 3.18.0 was just published to npm. It looks like they’re releasing a new LSP version today.
microsoft.github.io
Specification
This document describes the upcoming 3.18.x version of the language server protocol and is under development. An implementation for node of the 3.18.x versio...
000