Profile banner
Profile picture

James

@43081j.com

@e18e.dev - chaijs.com - tinylibs - parse5 - unjs - @lit.dev core contrib - github.com/43081j / Focusing on ecosystem perf & tooling πŸ₯³

created April 29, 2023

1,270 followers 207 following 1,636 posts

view profile on Bluesky

Posts

Profile picture James (@43081j.com) reply parent

the most proficient users of LLMs i know lean on large stacks of tools (i.e. mcp). i think a lot of the poor results would be better with such a curated stack of tools it can call. much of the smarts come from those, not from the model

1/9/2025, 7:19:17 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

we have a conversation in the e18e discord at the min around why generators are so much slower than a regular iterator anyone who knows v8 and/or node internals better than us want to educate us? πŸ˜„

1/9/2025, 5:27:26 PM | 6 0 | View on Bluesky | view

Profile picture James (@43081j.com)

i do miss having a budget for conferences πŸ˜… if anyone wants to sponsor me getting to squiggle, perf now or vue fes japan - ill be your best friend πŸ˜‚

1/9/2025, 5:24:10 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

sway is the best! tiling window managers are awesome πŸ˜€

1/9/2025, 3:38:38 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

totally forgot about this! more antfu magic πŸ˜€

1/9/2025, 1:12:56 PM | 4 0 | View on Bluesky | view

Profile picture James (@43081j.com)

any good suggestions for slides-as-code? happy to use svelte, solid, vue, lit or preact. whatever works would be super nice to have some "live" slides (i.e. running code examples on them etc)

1/9/2025, 1:01:47 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

coming back to this a day after using it now... it seems to work great. the one thing i keep bumping into - many type imports don't seem to support go-to-def hover info of that same type shows correctly (so it has resolved it, just go-to-def doesn't work) will search the issues!

1/9/2025, 11:05:42 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

big thanks to the people who involved me in many of these, too too many to list, but to name a few: @natemoo.re @antfu.me @pi0.io and @keithamus.social the best projects to maintain are those where you have a team πŸ™

1/9/2025, 10:55:46 AM | 7 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

remember, you can also sponsor me over at github. these sponsorships help me out a lot πŸ™

1/9/2025, 8:35:30 AM | 5 2 | View on Bluesky | view

Profile picture James (@43081j.com)

i've updated my website a little to at least list the things i work on - its quite a lot now πŸ˜…

1/9/2025, 8:33:12 AM | 13 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

That register article is such nonsense. Sourced from a company that clearly just wanted some pr to sell their product Really terrible trying to damage the reputation of a good maintainer 😬

1/9/2025, 6:53:58 AM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

may end up dropping you a DM or two πŸ˜… mostly its been a question of "which solution are people using these days"

31/8/2025, 9:23:45 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

aha thats great! i do a lot of them already but might still be handy

31/8/2025, 9:22:00 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

looks like @sxzz.dev is doing great work pushing people to use trusted publishing! happy to see e18e folks helping out too

31/8/2025, 6:51:43 PM | 10 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

also i feel like i want a "neovim hard mode" πŸ˜‚ some of this i already managed, but: - disable arrow keys - disallow switching buffers without saving - no autocomplete (in some languages, force ctrl+space)

31/8/2025, 6:09:59 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

i used the config from nvim-lspconfig, then `vim.lsp.enable('tsgo')` and it works great so far importantly, it fixes the issue i was having πŸ˜…

31/8/2025, 6:03:28 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

good to know about vtsls still. it does have the same issue though which makes me think its just a general diff between tsserver and lsp wrappers somehow πŸ€”

31/8/2025, 5:58:12 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

i have, but through individual language plugins like typescript-vim. then coc for lsp-like support all this stuff existed before language servers were a thing (so uses tsserver directly for example)

31/8/2025, 5:49:30 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

a wrapper! i didn't know there was an official one πŸ‘€ im using nvim-lspconfig and the ts_ls wrapper they have there should i be using an official tsgo one in parallel to these configs (and turn off the one they have)?

31/8/2025, 5:44:06 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

so far so good but the lsp stuff (with typescript at least) gives a lot of poor suggestions go to def on a function pops a list of possible defs up: the function itself, and all the `Array` definitions inside TS (because thats what it returns maybe?) bit of a pain 😞 just wanna hop to the function

31/8/2025, 5:19:50 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

I'm a long time vim user, and never really had a need to use neovim or any other alternative/successor But the language service stuff alone might be enough to make me move πŸ‘€

31/8/2025, 12:35:50 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

Weekend task - setup neovim πŸ‘€

31/8/2025, 12:34:50 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com)

added grouped updates to the preact signals devtools πŸŽ‰ thanks to @jovidecroock.com and the team for being open to early contributions πŸ™

a screenshot of the preact dev tools, displaying a single signal called
29/8/2025, 10:40:11 AM | 9 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

i've found that claude code is very accurate at doing trivial/boilerplatey stuff my time shouldn't be needed for (stuff i'd give a junior dev if i had one! πŸ˜‚) i still don't use them for complex things though

28/8/2025, 6:53:38 PM | 6 0 | View on Bluesky | view

Profile picture James (@43081j.com)

fixed an obscure bug in sveltekit today that i spotted by eye! it'd rarely get hit but still proud i found it πŸ˜‚

28/8/2025, 4:17:37 PM | 21 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Maybe we need a map of the fastest coffee shops πŸ˜‚

28/8/2025, 3:54:19 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

published a new release of relit, its basically the vueuse of the lit world. check it out!

28/8/2025, 1:48:50 PM | 4 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

This is the bit that makes no sense in the write up to me It reads as if the attacker used the pr target trigger to get the GitHub token Then they committed to the source repo and ran the publish flow to get the npm token? So they had perm to also just publish via the flow at that point? πŸ€”

27/8/2025, 11:30:56 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

and here's some great recipes docs on common uses

27/8/2025, 4:18:21 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com)

have been checking out lfi recently - fairly small library of very useful async utils in repos that pull a lot of separate async util packages in, this could be a good unified replacement

27/8/2025, 3:58:21 PM | 7 4 | View on Bluesky | view

Profile picture James (@43081j.com)

on this, i think OIDC publishing would've prevented it since no human could publish then (without going through the GH workflow) - turn on trusted publishing - disable tokens in npm ("Require two-factor authentication and disallow tokens")

27/8/2025, 12:45:06 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

good job github!

a screenshot of a github search with 0 results
27/8/2025, 9:03:07 AM | 2 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

there's so many npm keys in the published repos - we probably haven't seen the end of this yet how long until the same malware is published to the packages under those keys too?

27/8/2025, 8:31:46 AM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

nx was compromised and a new version w/ malware published to npm anyone at github can nudge someone to mass-hide/remove the repos it created? πŸ‘€

27/8/2025, 8:23:12 AM | 15 3 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

YES! i tried building this long ago but got side tracked πŸ˜… do let me know if you want any help, i'd love to see something like this see wider use

26/8/2025, 7:04:09 PM | 5 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

you're basically a buffer so your team can focus and not have to context switch, feel pressure, etc on a side note, its not frustrating for all leads. some context switch better than others πŸ˜…

26/8/2025, 4:01:14 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

looking forward to catching up! πŸŽ‰

26/8/2025, 1:24:00 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com)

doing a short talk later this year for anyone interested πŸ‘€

26/8/2025, 12:29:53 PM | 34 4 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

i like this idea a lot more i think `strict` just changes over time to have fewer settings as they graduate people can always individually turn them off still

26/8/2025, 11:28:35 AM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

this'll be so, so nice 😍

26/8/2025, 11:27:37 AM | 4 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

if you set `autoRenamePlugins: false`, you might be able to trim away some of that renaming code you have

26/8/2025, 11:00:06 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

You're an experienced dev - trying to "vibe code" is like trying to be junior again. Using an llm to get the boilerplate/trivial tasks out of the way is more useful (which isn't vibe coding)

25/8/2025, 7:03:29 AM | 11 0 | View on Bluesky | view

Profile picture James (@43081j.com)

we've just launched the replacements docs on the @e18e.dev site! this is part of a wider effort to document how to make your projects more performant. for now, just the replacements - but in future, perf tips and much more πŸŽ‰ all feedback much appreciated! ❀️

24/8/2025, 8:35:31 PM | 46 18 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

hah, that is a 3rd valid case - when two packages want to follow different paths of implementation. so it makes sense to diverge the ones im talking about are near identical implementations of the same thing. only diff is the owner

24/8/2025, 4:18:30 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

silly james! i've published a new version which fixes this thanks for letting me know

24/8/2025, 4:15:34 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

in a bunch of cases i've seen, the other maintainer is active and responsive. if they're not, i think i agree its fair to fork/replicate can't think of a good reason to duplicate active, well built packages otherwise!

24/8/2025, 3:54:07 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

some popular maintainers seem to have a habit of insisting on owning their dependency trees. even very simple established packages, they will make their own instead which is roughly the same code. is this a security thing? or what

24/8/2025, 1:38:24 PM | 2 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

3. its unlikely the maintainers would want to switch their dependencies to the ones we have (in slice-ansi and many others, they're known to prefer owning their dependencies rather than using someone else's). we may also choose to make some obscure edge cases optional instead of default in future

24/8/2025, 1:26:33 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

2. API differences. for now, we choose not to care about order of prepended/appended ANSI codes. e.g. if you slice `bar` out of `{bold}{fg:blue}foo bar{/fg}{/bold}`, you won't necessarily get `{bold}{fg:blue}bar`, you might get `{fg:blue}{bold}bar`. this makes no diff to rendering

24/8/2025, 1:24:19 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

1. we do have benchmarks but need to work on publishing some more realistic use cases (though i've been benching against some locally) here's a couple we've been using

image
24/8/2025, 1:21:32 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

you did. seems strange though since lit doesn't nuke the dom when props change. it updates attributes, text nodes, etc individually

23/8/2025, 3:50:04 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

fast-slice-ansi is a faster, modern alternative to slice-ansi check it out! πŸŽ‰

23/8/2025, 3:19:29 PM | 6 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Interesting πŸ€” which requirements don't they fit?

23/8/2025, 3:16:03 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

yes with some effort you can kinda get svelte to run clientside without a build but its not really made for that i would just use lit in this case, or preact: preactjs.com/guide/v10/no...

23/8/2025, 3:06:18 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Lit + signals maybe? Svelte is a good choice but leans towards build time stuff. Preact possibly too

23/8/2025, 2:13:28 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

when the npmgraph looks like this, maybe its time to back away

a screenshot of part of a dependency graph, showing many crossing lines and disorganised connections
22/8/2025, 9:15:56 PM | 25 2 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

you can actually turn it on, reload bsky, turn it off. from then on, you can read DMs until you do a full reload again

22/8/2025, 2:43:51 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com)

22/8/2025, 11:08:06 AM | 22 1 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

chai 5.3.2 reintroduces the dual-publish meanwhile, since it turns out it was an unexpected breaking change this is one of the few cases where bundling a library makes sense, i think. since the dependencies are actually just part of chai but separated for organisation/cleanliness

22/8/2025, 9:43:24 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

we released 5.3.1 recently which dropped bundled chai (we had both bundled/unbundled). this actually slowed chai down, but did reduce the size. given that all of our deps are self-owned (and usually only used by chai), we've decided to bundle them in 6.x and no longer ship unbundled sources

22/8/2025, 9:42:05 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

chai 6.0.0 released πŸš€ - this reduces the size to ~140KB and drops the individual entrypoints we used to have

22/8/2025, 9:40:17 AM | 12 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

a CLI tool! it was like a unified fuzzy finder across everything ever i'll remember it one day πŸ˜…

21/8/2025, 3:56:40 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

looks like you can pipe git into fzf at least, that might be good enough for now πŸ‘€

21/8/2025, 3:13:04 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

it was like fzf but over the top of many popular tools like it was already setup to do git, files, processes, etc

21/8/2025, 2:18:14 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

there's a tool out there which gives you fuzzy finding across a whole bunch of useful stuff (e.g. git). but i can't remember what its called. any ideas? πŸ˜…

21/8/2025, 2:15:59 PM | 3 0 | View on Bluesky | view

Profile picture James (@43081j.com)

have been using ctrl-z/fg to suspend and resume jobs so much lately. why didn't i do this all along πŸ˜…

21/8/2025, 10:40:20 AM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

aha it does have multi-select! i missed that, and pretty much the way im describing nice work πŸ˜€

20/8/2025, 3:14:59 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

and what about when someone asks for multi-select? πŸ˜… in many cases in the past i've ended up using a tags input, basically. like a combo but populate a tags list

20/8/2025, 3:14:05 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

material (mwc) has one iirc but the project seems to have lost to politics somewhere along the way and isn't as maintained now would also love to see one. im surprised shoelace hasn't got one

20/8/2025, 3:04:42 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

started the week by shaving 150KB off chai in 5.3.0 πŸ‘€

18/8/2025, 10:07:48 AM | 28 2 | View on Bluesky | view

Profile picture James (@43081j.com)

good amount of github to catch up on πŸ‘€

18/8/2025, 9:54:22 AM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

The non fun part is the 5 hours+ of delayed trains and such going back toπŸ˜…

17/8/2025, 11:25:57 AM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

Heading back home after a week stood in a field listening to music

17/8/2025, 9:02:58 AM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

I'll get to this when I'm back in a day or two πŸ‘ I think much of this is just because some things were rushed unfortunately. We put a lot of effort into following good contribution guidelines as a community, so it's a shame to see these problems/disagreements

16/8/2025, 5:10:09 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

The community has good intentions to this guidance, and probably just got ahead/looser as things started to get merged unfortunately. lodash rarely has a need these days since much of it exists natively, but that migration needs to happen at a pace the team can deal with

16/8/2025, 3:19:28 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

I'm the one who initially reached out to remix, I put a lot of effort to discuss things first and create issues, etc It can be difficult to keep an entire community on a track like that but I do try. I probably should've kept a closer eye on it

16/8/2025, 3:17:47 PM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Seems unfortunate you've had a poor experience here. I'll try catch up on it when I'm back. Lodash still has a use but a large portion of it exists natively now, which covers most use cases

16/8/2025, 2:58:46 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

I've been away this week (and still am) but have tried to catch up on this stuff. The lodash creator joined our community long ago and was on board with moving to native utils instead of lodash. I think that's what the community is trying to do. The granular packages are not maintained either

16/8/2025, 2:56:41 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Feel free to DM me which ones you think are poorly written. We have a very thorough contribution and advocacy guide - and the core contributors in the community certainly don't submit low quality changes. So I'm sure you've encountered an outlier - it is a fairly big community after all

16/8/2025, 7:06:46 AM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

Well that's new! Being blocked from creating issues on a repo for asking if we can drop browser support πŸ˜… Top interaction

13/8/2025, 9:10:11 AM | 9 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Yup that's the right thing to do but not possible in this case, since it's a library only for node buffers. So any browser support has to polyfill buffer πŸ˜… some libraries very clearly should've never had browser support

13/8/2025, 8:18:02 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

100% - because you knew it was appropriate for a browser so might have use there one day But a lot of these libraries are not like that and exist just to work with node built ins. So the bundle contains browser implementations for them all 😬

13/8/2025, 7:35:38 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

Seen a popular library that is built specifically for working with node built ins but has a browser bundle. Things like this I'm almost certain never needed browser support but that initial design choice means they've been supporting it all these years... Build it when needed, instead!

13/8/2025, 7:17:50 AM | 5 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Awesome! Will give it a go when I'm back at a laptop πŸ₯³ thanks so much

13/8/2025, 7:04:36 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

When I try run it on apple silicon, it complains that there's no binary available then tries/fails to build one iirc (mobile at the min so can't try it). If I install regular pprof-node, I can run that programmatically without a problem (the Google one)

13/8/2025, 6:58:35 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

awesome, thank you :D ill check both out

13/8/2025, 5:57:44 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com)

disappearing to a festival for a few days! πŸŽͺ

12/8/2025, 8:15:26 PM | 7 0 | View on Bluesky | view

Profile picture James (@43081j.com)

now that pprof-it (and pprof itself) seem fudged on any modern mac, does anyone know of a good alternative for quickly making a pprof-able profile from a node process?

12/8/2025, 3:20:36 PM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

Quite a few clack projects install boxen which results in pulling in a whole other, slower stack of ansi libraries. So this should help avoid those situations and speed things up a bit!

12/8/2025, 11:16:22 AM | 1 0 | View on Bluesky | view

Profile picture James (@43081j.com)

new version of @bomb.sh clack - now published with OIDC πŸŽ‰ we've added a new `box` prompt, nested task logs, and a bunch of improvements

12/8/2025, 8:32:45 AM | 8 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

nice work! do you have a plan to get the improvements into semver itself? or the package managers would be some huge savings

10/8/2025, 10:20:51 AM | 24 0 | View on Bluesky | view

Profile picture James (@43081j.com)

replacing wrap-ansi with fast-wrap-ansi in clack dropped the unminified size from 90KB to 71KB πŸ™Œ

9/8/2025, 11:13:46 AM | 17 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

is this using tsgolint under the hood? (the oxc fork) nice work!

8/8/2025, 5:44:01 PM | 5 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

should delve into the brain of @pngwn.at , sure hes been down that markdown rabbithole before πŸ˜… & if you want any help, i'd love to join in :D

8/8/2025, 3:32:59 PM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com)

we now have an @e18e.dev github sponsors page! this community has helped so widely across the ecosystem - the prettier cli, esm migration, storybook/netlify/etc size reduction, and much more sponsorships will help support the people doing all of this work ❀️

8/8/2025, 3:13:40 PM | 6 2 | View on Bluesky | view

Profile picture James (@43081j.com)

Enable oidc publishing everyone! πŸ’₯

5/8/2025, 5:49:23 PM | 2 1 | View on Bluesky | view

Profile picture James (@43081j.com)

Heading down to London for the day! πŸ™Œ

5/8/2025, 9:24:19 AM | 0 0 | View on Bluesky | view

Profile picture James (@43081j.com) reply parent

I shall do the same! This is great news πŸ˜€

5/8/2025, 9:23:57 AM | 2 0 | View on Bluesky | view

Profile picture James (@43081j.com)

Do I know anyone at GitHub? πŸ‘€ Our e18e sponsors account has been stuck pending for a few months now I think I know why but struggling to find a human to ask about it πŸ˜‚

5/8/2025, 8:44:14 AM | 4 3 | View on Bluesky | view

Profile picture James (@43081j.com)

a common thing i've run into this week: packages which exhaustively try to cover every possible edge case. but it turns out almost no consumer calls it in a way that would hit those cases some are 1/4 of the size when you cut those out. sometimes its ok to just... not support things

4/8/2025, 8:30:29 PM | 49 10 | View on Bluesky | view