Sign in

Sandro Circi

@sandros94.com
329 followers 121 following 524 posts

Picture after picture is how the story is told. Formally a photographer, insanely curious and passioned optimizer. 💾 github.com/sandros94 Part of unjs.io, h3js and the ecosystem team of nuxt.com Also helping in any OSS project such as nitro.build

PostsRepliesMedia
Sandro Circi @sandros94.com · 25/09/2026
I've finally started developing a personal project that is just for fun Combining all the usual tools that I generally build or contribute to, but this time driven only by curiosity. I'm sure that with the right spirit and perseverance I'll finish it and publish it for everyone to enjoy
XDraw 2d rendering of path discoverability over rough terrain
010
Sandro Circi @sandros94.com · 23/09/2026
Fun fact: with the recent OpenAI Pro 20x _shortage_ the OSS program got limited to Pro 5x But upon this renewal it tried to allocate the 103€ from my card, which I don't have, for future ones So I'm in a soft lock state on which Claude suggests to let expire and re-apply if I'm really interested 🤣
110
Sandro Circi @sandros94.com · 11/09/2026
And then I'm the one looking for appropriate names for packages or domain names... getair.space feat @danielroe.dev
github.com
GitHub - danielroe/airspace: The database you already have.
The database you already have. Contribute to danielroe/airspace development by creating an account on GitHub.
1211
Reposted by Sandro Circi
Sylwia Vargas @sylwia.bsky.social · 07/09/2026
Can’t get over how clever the first six words of this article are 😍
A photo of an article called “the case for QR codes” where the first six words are: “Quick Response codes (no, me neither) have many applications”
3374
Reposted by Sandro Circi
Benjamin Canac @benjamincanac.dev · 07/09/2026
Nuxt UI now has a theme editor: ui.nuxt.com/theme 🎨 Pick a preset or roll the dice, bend the palette curves, swap fonts, icons and radius, preview on real templates, then export only what you changed!
1193
Sandro Circi @sandros94.com · 01/09/2026
I wanted to keep it simple and package-like
viteconf.org
Sandro Circi's ViteConf 2026 mission credential
Sandro Circi is on a build mission for ViteConf 2026. Create your own credential.
020
Sandro Circi @sandros94.com · 26/08/2026
as I was dealing with logging lately I've discovered the Parquet file format in combination with S3 bucket storage, but I didn't like the big deps that some existings libs had. So as usual, to better learn this format, I decided to draft a few utilities that in a week turned into a full library
github.com
GitHub - sandros94/tavolato: A small Parquet reader and writer that works anywhere
A small Parquet reader and writer that works anywhere - sandros94/tavolato
000
Sandro Circi @sandros94.com · 01/08/2026
An underrated project that I find myself preferring over tools like Storybook is compodium by @rohm.dev It lets you have a similar component playground for both vue and nuxt devtools and built-in form generated from the actual component own props!
github.com
GitHub - romhml/compodium: A plug and play component playground for Vue and Nuxt.
A plug and play component playground for Vue and Nuxt. - romhml/compodium
030
Sandro Circi @sandros94.com · 31/07/2026
while laughing with a friend that was complaining that he had to study 4 RFC documents, I ended up telling him "at least your PM didn't ask the full JWT ecosystem!" But then I got curious to see the ones I've studied for unjwt, and only in my notes I've copied over 33 out of the +70 that exist...
000
Sandro Circi @sandros94.com · 30/07/2026
I can finally say why I started ignoring h3-mcp-tools 😅 So many discussions and decisions were made in almost a year of experimentation!
010
Sandro Circi @sandros94.com · 23/07/2026
The only regret I have in life is not getting Excalibur Prime when I was able to.
000
Sandro Circi @sandros94.com · 01/07/2026
Database management has more in common with thermodynamics than code.
020
Sandro Circi @sandros94.com · 22/05/2026
I love lowcode, but how do I always find myself already deep into a new rabbit hole?
010
Sandro Circi @sandros94.com · 24/04/2026
the placebo effect is incredible in humans (and probably animals too). It should always be respected in the right circumstances
000
Sandro Circi @sandros94.com · 23/04/2026
After a year of studying and development now I think I have the specs pretty well covered. With unjwt v0.7 it landed multi-party signing and encryption, many convention and security hardening, as well as performance and improved types. But most importantly, docs!
unjwt.s94.dev
unjwt - Low-level JWT toolkit on Web Crypto API
Sign, verify, encrypt, and decrypt JSON Web Tokens with Web Crypto APIs. JWS, JWE, and JWK in a single zero-dependency package.
140
Sandro Circi @sandros94.com · 18/04/2026
Just for fun I ended up doing an LLM research on myself (also because the last HR I've talked to mentioned that they couldn't find my OSS contributions) You'll be surprised not only by how much of you already is on the internet, but how many things you have done and may have forgotten
100
Sandro Circi @sandros94.com · 19/03/2026
one of my drives in my san is dying after 2 years of service, which led me to countless hours of debugging and planning. but then as I was going to sleep I checked both my 4770k and Q6600, both doing great. Imagine running a system with a cpu legally allowed to get a driving license...
000
Sandro Circi @sandros94.com · 15/03/2026
The first @nuxt.com v5 nightly build is more polished than you might think... The only changes made to make it work on @bunny.net are: - patch `@nuxt/icon` - fix Nitro imports - use `consola/browser` for Edge Scripting compatibility powered by @nitro.build v3 and @vite.dev v8
nuxt-v5-tq8ok.bunny.run
2291
Reposted by Sandro Circi
Nitro @nitro.build · 11/03/2026
Nitro v3 beta is here! nitro.build/blog/v3-beta
Nitro v3 is now available as a public beta — a ground-up evolution of the server framework, built around web standards, Rolldown, Vite v8, and the same deploy-anywhere promise.
49818
Sandro Circi @sandros94.com · 07/03/2026
I'm a heavy automd (@unjs.io) user, but didn't quite like having to manually setup @npmx.dev badges. Created a small PR to add it as a dedicated provider! 😬
github.com
feat(badges): add npmx.dev as a badge provider by sandros94 · Pull Request #137 · unjs/automd
Adds npmx.dev as a new provider option for the badges generator, sourcing badge images from https://npmx.dev/api/registry/badge/. Badge type mappings: npmVersion → /badge/version/{name} npmDownl...
2120
Sandro Circi @sandros94.com · 07/03/2026
spent some time yesterday refactoring a bit unjwt, some of the changes were planned since months ago (mostly perf) others just turned out to be nice additions I've also added skills for your agents, just install it and let them help you use the power of JWT ```sh npx skills add sandros94/unjwt ```
github.com
Release v0.5.39 · sandros94/unjwt
compare changes 🔥 Performance Optimize JWE/JWS (67c2f7d) 🩹 Fixes h3v2: Do not rely on upstream event.res (8afdb1b) 💅 Refactors Improve performance, security, and bundle size across core module...
020
Reposted by Sandro Circi
npmx @npmx.dev · 03/03/2026
npmx is now in alpha: this is our story, as told by our team and friends
npmx.dev
Announcing npmx: a fast, modern browser for the npm registry
Today we're releasing the alpha of npmx.dev – a fast, modern browser for the npm registry, built in the open by a growing community.
16367127
Sandro Circi @sandros94.com · 13/02/2026
I'm working on an experimental preset that would make building and deploying full-stack @nitro.build v3 applications easier on @bunny.net Here's the experimental demo for SSR + Static Assest + WebSocket test-nitro-preset-un20f.bunny.run Or checkout the PR directly
github.com
feat(bunny): add new preset by sandros94 · Pull Request #4025 · nitrojs/nitro
🔗 Linked issue Discussed privately ❓ Type of change 📖 Documentation (updates to the documentation, readme, or JSdoc annotations) 🐞 Bug fix (a non-breaking change that fixes an issue) 👌 Enhance...
100
Reposted by Sandro Circi
Pooya Parsa @pi0.io · 06/02/2026
🥗 unjs/c12 v4 (beta) -📦 Install size: 3.44 MB → 380 kB (deps: 20 → 7) - ⚡ TypeScript configs load ~2.5× faster on cold cache - 🔒 Supports expanding env vars via _FILE references With 37M monthly downloads, once everyone migrates, this saves over 100 TiB of bandwidth 🫣 github.com/unjs/c12/rel...
github.com
Release v4.0.0-beta.2 · unjs/c12
compare changes 📦 Package Improvements c12 install size is now down to 380kB from 3.44MB (20 deps to 7 deps). Loading TypeScript files is significantly faster (on cold cache) — simple TS config loa...
1606
Sandro Circi @sandros94.com · 06/02/2026
@patak.dev here's a new conversation topic: WDYT about @katywings.bsky.social point? I can still remember my initial though on using git in general, because it made making mistakes more like a learning path rather than an issue. I should stop deleting posts just because I've made a typo
110
Sandro Circi @sandros94.com · 06/02/2026
Small tip for speedrunners: if you want to reach @npmx.dev repo real quick just type repo.npmx.dev And since you are there now, make sure to star it
repo.npmx.dev
GitHub - npmx-dev/npmx.dev: a fast, modern browser for the npm registry
a fast, modern browser for the npm registry. Contribute to npmx-dev/npmx.dev development by creating an account on GitHub.
1324
Sandro Circi @sandros94.com · 05/02/2026
Giving some love to what is probably my all-time favorite package, which powers everything under the hood 🙌 npmx.dev/h3
h3 on npmx.dev with exactly one like
1220
Reposted by Sandro Circi
Pooya Parsa @pi0.io · 05/02/2026
H3 now has a fancy CLI (powered by srvx)!
2402
Reposted by Sandro Circi
Fabian Hiller @fabianhiller.com · 04/02/2026
1,018,266 downloads in ONE DAY for @valibot.dev! 📈 Thank you! This little schema library means a lot to me, and seeing this support is unreal! 🙏 Let’s keep building safer, lighter TS apps together. v1.3 coming soon with even more goodies. 🔧
1221
Reposted by Sandro Circi
🌫️ Grant Forrest @gfor.rest · 04/02/2026
Corporate: "Learn how to spot scam attempts. Scammers often create a false sense of urgency to override your common sense." Corporate: "The market says if we don't adopt AI by Q3 we will be LEFT BEHIND."
0154
Sandro Circi @sandros94.com · 04/02/2026
Nitro v3 is so dead simple to integrate with whatever the f(st)ack you want. You have no excuse now.
091
Reposted by Sandro Circi
Fabian Hiller @fabianhiller.com · 27/01/2026
Introducing Open Circle – powering the next chapter of @valibot.dev and @formisch.dev 🌀 ✅ Direct community sponsorships ✅ Transparent open source funding ✅ Community-driven development Full details here: valibot.dev/blog/introdu...
valibot.dev
Introducing Open Circle
A few months ago, we moved the Valibot and Formisch repositories from Fabian's personal GitHub account into the Open Circle organization. This post explains what Open Circle is, why we made this chang...
3314
Reposted by Sandro Circi
Luca Casonato 🏳️‍🌈 @lcas.dev · 28/12/2025
These are the same people that keep telling the EU that ticketing and real time data is a solved problem and making the data public is not necessary because people can just use their apps
0232
Sandro Circi @sandros94.com · 31/12/2025
Italy always amazes me... Arcade rooms and international majors for competitive videogames are practically banned thanks to a few meticulously crafter laws, which in contrast favours gambling especially in +18 but still <25~ audience I'm okay with gambling but why does nobody even know about this?
010
Reposted by Sandro Circi
Fabian Hiller @fabianhiller.com · 25/11/2025
@valibot.dev v1.2 is out! This version adds powerful transformation actions for type coercion, new metadata features to improve AI tool integration, and ISBN validation for library management systems. valibot.dev/blog/valibot...
0122
Sandro Circi @sandros94.com · 17/11/2025
Lately I'm going a bit further compared to programming. In particular since I started struggling in building a project I have had in mind for so long. Ended up potentially finding the cause, and it comes down to the fundamental difference between algorithms and patterns.
210
Sandro Circi @sandros94.com · 04/11/2025
It is amazing what you can achieve when you have a Spec, Fetch and WebCrypto API. Ended up writing `uns3`, a tiny, zero-dep, runtime-agnostic S3 client. I was looking for a dead simple DX like unstorage, but dedicated to S3 only
github.com
GitHub - sandros94/uns3: Tiny, zero-dep, runtime-agnostic S3 client.
Tiny, zero-dep, runtime-agnostic S3 client. Contribute to sandros94/uns3 development by creating an account on GitHub.
000
Reposted by Sandro Circi
Pooya Parsa @pi0.io · 04/11/2025
> H3ravel is a modern TypeScript runtime-agnostic web framework built on top of H3, designed to bring the elegance and developer experience of Laravel PHP to the JavaScript ecosystem. Made by github.com/3m1n3nc3 h3ravel.toneflix.net
h3ravel.toneflix.net
The web framework that masks your fears
Modern TypeScript runtime-agnostic web framework built on top of H3 with Laravel's Elegance and TypeScript's Power
062
Sandro Circi @sandros94.com · 25/10/2025
This is one of the reason why I started a rewrite of my `nuxt-surrealdb` module, but this time built on top of the official Surrealdb SDK v2 This allows to optionally embed SurrealDB into either, or both, your Vue client-side or Nitro server-side with dedicated in-memory or pesistent storage utils.
github.com
RFC: `0.5.0` rewrite with official SurrealDB SDK v2 (alpha) · sandros94 nuxt-surrealdb · Discussion #24
Feel free to leave comments about the future of the 0.5.0 release, which is currently in alpha and based on the offical SDK v2, which is also in alpha. you can find some of my notes in various merg...
020
Sandro Circi @sandros94.com · 25/10/2025
wtf javascript?!? console.log("2" + "2" - "2");
110
Reposted by Sandro Circi
Benjamin Canac @benjamincanac.dev · 23/10/2025
Nuxt UI v4.1 is here ✨ 📦 New Empty component ⚡️ Virtualization for large datasets 🎯 Smart CSS bundling with experimental component detection …and tons more — check it out: github.com/nuxt/ui/rele...
0536
Reposted by Sandro Circi
Fabian Hiller @fabianhiller.com · 14/10/2025
@valibot.dev infers TS types + issues from your schemas! 🔥 No more boilerplate drudgery. Dive in: valibot.dev/guides/infer...
091
Sandro Circi @sandros94.com · 04/10/2025
We are so close for 1st position! Could we get a bit of help? 🙏
010
Sandro Circi @sandros94.com · 01/10/2025
Published yet another update for `unjwt` Added an h3 (v1) adapter with in-context caching for both JWS and JWT tokens. With minimal runtime configuration you'll be also able to wrap them in your Nuxt and Nitro projects
Minimal code example for handling JWE and JWS sessions in h3, Nitro and Nuxt

```ts
import { useJWESession, useJWSSession, generateJWK } from "unjwt/adapters/h3";

const keys = await generateJWK("RS256");

export default defineEventHandler(async (event) => {
  const privateSession = await useJWESession(event, {
    name: "app-session",
    secret: "my-secret", // or JWK (symmetric or asymmetric keypair)
  });

  await privateSession.update((data) => ({
    visits: (data.visits ?? 0) + 1,
  }));

  const publicSession = await useJWSSession(event, {
    name: "app-session-public",
    key: keys, // you can directly pass symmetric or asymmetric keypairs
    maxAge: 60 * 60, // automatic JWT and cookie expiration
  });

  return {
    encryptedSession: privateSession.data,
    signedSession: publicSession.data,
  };
});
```
110
Sandro Circi @sandros94.com · 28/09/2025
back in march I got introduced to Json Web Tokens (JWT), ended up loving the spec but not so much the API provided by libraries. So I started working on a personal implementation for my own work. Now, 4+ months later from the first release, I can finally say that I have the API that I imagined.
120
Reposted by Sandro Circi
Nuxt @nuxt.com · 23/09/2025
Nuxt UI v4 it out ✨ It unifies Nuxt UI and Nuxt UI Pro into a fully open-source library with: - 100+ components - 10+ free templates - Figma Kit for everyone nuxt.com/blog/nuxt-u...
nuxt.com
Nuxt UI v4 · Nuxt Blog
Nuxt UI v4 unifies Nuxt UI and Nuxt UI Pro into one powerful, completely free library. With over 110 components, 12 templates, and a comprehensive Figma kit, all of this is available for free.
312023
Reposted by Sandro Circi
Fabian Hiller @fabianhiller.com · 16/09/2025
This is one of the coolest @valibot.dev utility libraries around! 🔥 It can convert Valibot schemas into stringified TypeScript types. It can also check schemas for equality and clone them. Great job, @ahrjarrett.bsky.social! 🪄 Read the full article on @dev.to: dev.to/ahrjarrett/i...
dev.to
Introducing: @traversable/valibot
A few weeks ago I released a TypeScript library called @traversable/valibot. This post covers what...
2174
Sandro Circi @sandros94.com · 14/09/2025
have you ever found yourself finishing a rewrite of an entire project, only to realize that if you would rewrite in a completely different way you both improve performence and DX?...
230
Sandro Circi @sandros94.com · 13/09/2025
I've said this so many times: once you start piping around with valibot, there is no going back.
120
Sandro Circi @sandros94.com · 10/09/2025
Just a small reminder, since Nuxt UI v4 is closer and closer to a stable release
130