voxpelli, to typescript
@voxpelli@mastodon.social avatar

Forked and revived an old module I made at my previous job:

ts-ignore-import: https://www.npmjs.com/package/ts-ignore-import

It helps ignoring optional type imports in autogenerated type declarations – which is especially useful when one writes .

Ignoring an optional type import makes it silently revert to ”any” when the type can not be imported, which is great when one eg. wants to reference multiple frameworks in the same project without requiring all those types.

voxpelli, to random
@voxpelli@mastodon.social avatar

Implicit typing of eg. return values in TypeScript is the cause of many many overly complicated types. Please don’t.

voxpelli,
@voxpelli@mastodon.social avatar

Extensive use of inferred types, especially nested complex objects, is bad / for at least two reasons:

  1. Inferring the types from the implementation rather than making a commitment to a concise and explicit type makes for a needless complex and unclear API-contract – increasing coupling and possible breakage

  2. Inference and the likely complex type they result in is not just a problem for human consumption, it's straight up slow: https://github.com/microsoft/TypeScript/wiki/Performance#using-type-annotations

voxpelli,
@voxpelli@mastodon.social avatar

Instead of simply subtweeting / subtooting / sub-something, I also filed an issue to one of the projects that made me think of this: https://github.com/melt-ui/melt-ui/issues/978

voxpelli, to programming
@voxpelli@mastodon.social avatar

FYI – I’m available for / / conference talks / shorter gigs (1-2 days at a time)

I’m right now primarily focusing on my own projects but happy to share my experience with others + never wrong to refill the wallet a bit.

Topics I’m extra thrilled about:

sophie, to random
@sophie@social.lol avatar

Forever amazed at how React can make me feel like I don't know how to do Javascript even though I know that's not true 😓

voxpelli,
@voxpelli@mastodon.social avatar

@jzfski @DavidDarnes @sophie @sarajw @berkes Requiring a build step can feel like an unnecessary complication to small projects.

I myself use TS with JS through JSDoc though, and that works great for projects of all sizes.

TS the type checker is the nice part, the syntax / transpiler adds a lot less.

filmaj, to random

The state of the nodejs ecosystem is such a mess.. so much build tooling (TypeScript shakes fist), incompatible module systems and multiple package managers each with their own bugs... Building in node used to be so good, alas...

voxpelli,
@voxpelli@mastodon.social avatar

@filmaj @psvensson Though one can ignore most of it and develop like normally. Eg. typescript compilation is not needed for typing, one can go instead, and eg @fastify is strictly better than old-school Express

voxpelli, to random
@voxpelli@mastodon.social avatar

Stepped in these last few days and did some long overdue releases of despite having lots of else on my plate currently.

New releases of:

If you like what I do, consider sponsoring me: https://github.com/sponsors/voxpelli

voxpelli,
@voxpelli@mastodon.social avatar

Also check out my personal extended configuration for @eslint (targeted at projects): https://github.com/voxpelli/eslint-config

Feel free to use it or to be inspired by it for your own configs.

voxpelli, to javascript
@voxpelli@mastodon.social avatar

Extended my workflow for my to allow for me to manually run any specific version across all of my projects: https://github.com/voxpelli/tsconfig/commit/1af561694b48304b09ba68d6bf15c538f8b27c8c

Then ran it on the TypeScript 5.1.1-rc release and happily found that there seems to be no regressions for my projects: https://github.com/voxpelli/tsconfig/actions/runs/5058330599/jobs/9078310577

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines