In Progress
May 2026 — Present Personal Project

Nesso

Nesso is an app for active learning built around typed knowledge graphs, where nodes are ideas and edges are the typed semantic relations you draw between them. Instead of absorbing answers passively, you draw connections and choose what each link means: causes versus enables, subtype-of versus instance-of, across 52 relation types in eight categories. Every concept carries spaced-repetition state via FSRS. Nesso runs as a local-first web app and a Tauri desktop app. An optional Socratic AI helps you work through ideas using local or cloud models. It revisits an interest I first explored with Mindmapp, my first open-source project: helping people organize what they learn. This time I'm focusing on active learning, research on memory, and giving people control over their data.

Knowledge GraphAIOpen SourceLearning
Jul 2026 — Sep 2026 Personal Project

Atlante

Atlante has been an experimental project where I explored ways to manage agent prompts, skills, and workflows as composable, versioned artifacts. I built a small TypeScript tool to try out templates, validation, reusable packs, and early forms of evaluation.

AIDeveloper ExperienceOpen SourceTypeScript
Apr 2026 — Jun 2026 Personal Project

Squid

Squid grew out of my work on TheInterfold, where I spent a lot of time wrestling with fully homomorphic encryption and the rough edges of the tools available. It is an ergonomic Rust wrapper for Poulpy, a high-performance FHE library built on RLWE encryption over the Torus, adopting the bivariate polynomial representation proposed in Revisiting Key Decomposition Techniques for FHE and drawing on CHIMERA for unifying different schemes under a common plaintext space. Squid handles scratch memory management and scheme lifecycle transitions. It also ships as squid-js, with WebAssembly and Node.js bindings for use from JavaScript.

RustFully Homomorphic EncryptionResearch
Sep 2025 — Apr 2026 TheInterfold

TheInterfold

After a roughly 5-month break, I resumed work on the most complex project I've worked on so far. I had a lot to learn from the cryptographers and engineers on the team. TheInterfold is a distributed network for verifiable confidential computation that combines FHE, MPC, ZK, blockchain, and mechanism design. The network is designed to run computations on encrypted data contributed by multiple users. My work focused on Noir circuits and recursive proofs for verifying the threshold-BFV protocol, from distributed key generation and input encryption to threshold decryption and on-chain verification. I also built CRISP's proof system for coercion-resistant secret ballots, along with TypeScript SDKs, APIs, and tooling for generating and integrating proofs.

Zero-KnowledgeFull Homomorphic EncryptionMulti-Party ComputationResearchRust
Jan 2025 — Feb 2025 PSE (Ethereum Foundation)

MPC Framework

Although I only worked on it for a couple of months, this project gave me the chance to study MPC (Multi-Party Computation) and use Rust for the first time. MPC Framework makes building MPC circuits simpler, thanks to a DSL called Summon for boolean circuits and a plug-in architecture for different backends. In my opinion one of the most well-executed projects at PSE, largely thanks to Andrew Morris.

Multi-Party ComputationRust
Jul 2024 — Nov 2024 PSE (Ethereum Foundation)

ZK-ID

ZK-ID is a team working on zero-knowledge proofs for digital identity systems. I contributed from the team's inception, shortly before Devcon SEA. The goal was to coordinate efforts toward making ZK technologies interoperable and standardized. What struck me the most was realizing how many people, organizations, and institutions were already working on these problems.

IdentityCommunityZero-Knowledge
Sep 2023 — Oct 2023 0xPARC

Zupass

Zupass, conceived before Devconnect IST and later used at that and many other events, is a platform built to store and manage PCDs, an abstraction similar to W3C's verifiable credentials that allows anyone to verify a claim through a proof (ZK or any other cryptography). The PCD used for authentication was based on Semaphore. It was a pleasure contributing to this project with the 0xPARC team, who have played a substantial role in promoting Programmable Cryptography, a second generation of cryptographic primitives that includes ZK, MPC, FHE, and iO.

Zero-KnowledgeCommunity
Jan 2022 — Nov 2024 PSE (Ethereum Foundation)

ZK-Kit

I put a lot of work into ZK-Kit. We needed reusable, well-documented development tools for zero-knowledge projects, with libraries that could be used in production. I also wanted to bring together programmers interested in maintaining and improving them. Implementations included various Merkle trees, Baby Jubjub, Poseidon, and utilities initially built in JavaScript, Solidity, and Circom, later extended to Noir and Rust.

CommunityDeveloper Experience
Sep 2022 — Nov 2022 PSE (Ethereum Foundation)

Temporary Anonymous Zone

TAZ was an experiment, a booth at Devcon VI where attendees could learn about privacy, cryptography, and anonymity by actually using anonymous applications built on Semaphore: asking and answering questions, creating collaborative art, all without revealing their identity. The concept was inspired by T.A.Z.: The Temporary Autonomous Zone, an essay by the writer and anarchist Hakim Bey, adapted for the event by PSE's comms team. I also gave a talk at that Devcon that I had worked hard on, even though every cell in my body wished I wasn't on that stage at that moment.

PrivacyAnonymityCommunity
Jan 2022 — Dec 2024 PSE (Ethereum Foundation)

Semaphore

Semaphore was one of the first general-purpose zero-knowledge protocols, allowing users to prove membership in a group, or anonymity set, without revealing their identity, with gatekeepers that could enforce any condition: token ownership, credentials, and more. It could power anything from anonymous voting apps to mixers like Tornado Cash. When I started working on it, only a proof of concept existed. I led development through the audited v2–v4 releases, redesigning the Circom circuits, TypeScript SDKs, and Solidity contracts. Alongside the protocol, I worked on documentation, release pipelines, and the tools and workflows contributors used to work on it. It is the project I learned the most from.

BlockchainZero-KnowledgeProtocol Design
Aug 2021 — Apr 2023 PSE (Ethereum Foundation)

Interep

After implementing Iden3's Sparse Merkle Tree in TypeScript, I unexpectedly found myself working on a project with a mysterious team then called AppliedZKP, which later became PSE (Privacy and Scaling Explorations), a research and development lab supported by the Ethereum Foundation. The idea behind Interep was to build a bridge for transferring "reputation" from web2 to web3 using zero-knowledge. Through Interep I got involved in the Ethereum community and became interested in cypherpunk ideas.

Fun fact: one of the first contributors to Interep was Jay Graber, now CEO of Bluesky.

BlockchainZero-KnowledgeIdentityCommunity
Nov 2020 — Jul 2021 University of Cagliari

Elekton

Elekton was an anonymous voting application built with zero-knowledge proofs, which I worked on for my master's thesis. The ability to prove you possess information without revealing it felt like such a powerful concept that I couldn't pass up the opportunity to study the technology and its development tools. This project was also my first real step into cryptography, and got me thinking more seriously about privacy.

BlockchainZero-KnowledgeResearch
Jan 2018 — Jan 2020 University of Cagliari

CAFCHA

CAFCHA was a research project I contributed to during my master's degree. It was an application for certifying every step of the agro-food supply chain on the Ethereum blockchain. At the time, "blockchain" was on the verge of becoming an overused buzzword, but I was interested in the technology, especially the idea of decentralization as opposed to how the web was evolving (and unfortunately has kept evolving). Working on it taught me more about Solidity and what it takes to move a proof of concept to production.

BlockchainResearchMobile
Sep 2017 — Aug 2020 Personal Project

Mindmapp

My first personal open-source project, inspired by Tony Buzan's mind maps. Building it taught me a lot about JavaScript and web technologies and how open-source projects work. Through the project I met other people interested in memorization tools. The project was later forked by B310 into TeamMapper, a collaborative mind mapping tool now used for free by public schools in Germany.

Open SourceFrontendLearning