Typing APIs with feature maps

Posted on Mon 28 September 2026 in Tech, TypeScript • Tagged with typescript, types, tanstack

I was very intrigued by TanStack Table v9's feature-dependent API, where a table only exposes the methods of the features you registered. I wanted to understand how it was really implemented, so I rebuilt it on a tiny editor.


Continue reading

Higher kinded types for TypeScript

Posted on Wed 26 August 2026 in Tech, TypeScript, Effect • Tagged with typescript, types, higher-kinded types

In the previous post we saw that Result.gen and Option.gen are very similar but looking at the Effect's codebase we can see that the type signature is very different from ours:

import { import ResultResult, import OptionOption, import UtilsUtils } from "effect"

declare const const genResult: Utils …

Continue reading

Rebuilding Effect's Result.gen

Posted on Wed 19 August 2026 in Tech, TypeScript, Effect • Tagged with typescript, types

Since I discovered ZIO I have been in love with effect systems. Effect brings an effect system to TypeScript, making it widely more useful due to the adoption of the language. I spent hours (probably days) digging into ZIO's codebase and learned a ton, it's now time to do the …


Continue reading

[ELEC][LED] HTTP proxy for infrared LED

Posted on Wed 01 February 2023 in Tech, Hardware • Tagged with iot, led, elec

A long time ago, I bought a led strip to pimp my desk and add a bit of backlight behind my screens. The led strip came with a remote, which was (or so I thought) great. However, I ended up never using this led strip ever again, precisely because of …


Continue reading

[TECH][BACKUP] Lifeboat.sh, retaining access to backups

Posted on Sat 24 December 2022 in Tech, Hardware, Setup • Tagged with lenovo, x1c6, restic, backup

The more time passes, the more backups I keep and the more afraid I am to lose them (or access to them), however those backup beeing encrypted and protected by many layers of passphrases, authentication, I must now make sure that I can access them from anywhere, at anytime, otherwise …


Continue reading