Lars
@webpro.nl
2.3K followers 260 following 1.2K posts
Independent developer/architect. JavaScript/TS, DX, automation, tooling, performance & OSS. Arch/Linux enthusiast. 🏡 https://webpro.nl 🦋 https://webpro.blue ✂️ https://knip.dev 📊 https://try.venz.dev 🔠 https://wooordle.webpro.nl 🔣 https://ansi.tools
Posts Media Videos Starter Packs
Pinned
Lars @webpro.nl · Aug 28
me, a relentless refactorer

webpro.nl/hire-me

i have 1 or 2 days a week availability to untangle & fresh up any JavaScript or TypeScript codebase ✂️
✂️ Knip v5.66.0 is out

Comes with a neat little feat: ignoreIssues (don't try this at home!)

knip.dev/reference/co...
knip.dev
ignoreIssues: Ignore specific issue types for specific file patterns. Keys are glob patterns and values are arrays of issue types to ignore for matching files. This allows ignoring specific issues (like unused exports) in generated files while still reporting other issues in those same files.
Lars @webpro.nl · 10h
🚀 WOW! That's amazing!

Speedup: 3.2x faster! 🎉

Now let's replace the TODO section with the actual implementation

🫠
Lars @webpro.nl · 10h
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so cursed
OSS is so great
OSS is so great
That's a great use case indeed, copy-paste back & forth.
Yes, and it's also a package downloaded ~100M a week, while a tool like prettier includes it for.... this: github.com/search?q=pat... (notice that like half of the files don't even use any special JSON5 syntax and could be parsed as .jsonc or even .json)
So this JSON5 thing also doesn't seem very much alive anymore? Last publish almost 3y ago. Not too much activity in the repo either..

json5.org
github.com/json5/json5
Reposted by Lars
✂️ Knip v5.65.0 is out

→ Some jolly good fixes in there
→ Has `ignoreFiles` to suppress unused files specifically (while `ignore` suppresses ANY issue in matching files)

🚨 BUT... you probably should NOT reach for `ignore` at all and we need to talk config... 👇
It's only human...
Reposted by Lars
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
Let's go over this one more time, as Everyone & The Bots keep _ignoring_ this:

→ Use `project` patterns to define source files set
→ Use production mode to exclude tests, stories, etc.
→ Use `ignore` ONLY to suppress issues, it does NOT exclude files from analysis

knip.dev/guides/confi...

🙏❤️
✂️ Knip v5.65.0 is out

→ Some jolly good fixes in there
→ Has `ignoreFiles` to suppress unused files specifically (while `ignore` suppresses ANY issue in matching files)

🚨 BUT... you probably should NOT reach for `ignore` at all and we need to talk config... 👇
Reposted by Lars
"If I Had More Time, I Would Have Written a Shorter Letter" - this is a memo that AI coding tools have yet to to take on board. knip.dev totally has though. I just used it to put an AI generated codebase through the deadwood colander and I'm very happy with the results!
Declutter your JavaScript & TypeScript projects
Project linter to find unused dependencies, exports and files
knip.dev
Thanks John, very nice to hear and glad it's useful! There's always room for improvement though, feel free to share where we could "write it shorter" ✅
You certainly have a good point, but so far quality and convenience actually go up. For instance I've installed pi-hole, and navidrome to stream my music
Recently bought this $100 mini pc (N95) and it's been so great for learning, hacking and trying out things like self-hosting and homelab stuff, linux distros, install scripts and what have you. Whatever works might end up on the actual NAS to further ungoogle, unflix, unspotify, etc.
Lars @webpro.nl · Jun 30
Ungoogling hard here, got rid of Drive and set DDG as default search engine

Next up are Gmail (personal) and Chrome ✌️
Thank you, Cyle! And for your significant contribs as well, much appreciated 🙏
Reposted by Lars
🗣️ My talk "Decluttering Sentry - One Knip at a Time" from @react-prague.bsky.social is now available on YouTube

✂️ This is a real-life story (with ups and downs) about how we used knip by @webpro.nl at @sentry.io to delete 20k lines of unused code and now run it in CI so it never happens again 🎉
Decluttering Sentry: One Knip at a Time | Dominik Dorfmeister
YouTube video by React Prague
www.youtube.com
Fantastic! Enthusiastic people and deleted code 👌 Thanks for spreading the joy ✂️

Tbh it's great to see how Knip handles the Sentry codebase. Just two nits: dynamic imports and auto-fix are supported now.
Lars @webpro.nl · 10d
Yeah, I guess! That was just the one I've stumbled upon and stuck with. I do like the ability to set hex color codes in PanWriter 🎨
Lars @webpro.nl · 10d
📝 Digging the distraction-free @calmlywriter.com app

🧘‍♂️ www.calmlywriter.com