I work on Rust, SQL, and machine learning at the University of Fribourg with the Earth Metabolome Initiative, and am affiliated with the Environmental Genomics and Systems Biology Division at Lawrence Berkeley National Laboratory. I am one of the main contributors to Diesel, sqlparser-rs, and bhtsne (and its playground dioxus-tsne), and have contributed spectral-similarity algorithms to matchms.
I am building a local-first Rust application stack in which native and browser clients work against local SQLite replicas while PostgreSQL remains authoritative. It is designed to give one Rust codebase immediate local reads and optimistic writes, offline operation, live query subscriptions, and authorization-preserving synchronization across native and WebAssembly applications. The result would remove the need for separate client data layers, bespoke synchronization protocols, and a network round trip for every interaction.
connetto-rs coordinates transport, optimistic mutations, reconnection, schema distribution, query subscriptions, file synchronization, and authorization-aware change delivery. Its independently useful building blocks include pg2sqlite for translating PostgreSQL schemas and queries into SQLite, including row-level security emulation, FTS5, pgvector, and PostGIS mappings; subql for routing change-data-capture events to SQL subscriptions; sqlite-diff-rs for changesets and patchsets; rls2fga for translating row-level security policies into OpenFGA models; and diesel-builders for type-safe construction across related tables. SQLiteGIS closes the spatial portability gap with PostGIS-style functions, EWKB compatibility, R-tree indexes, Diesel integration, and native and WebAssembly loadable extensions, with a live in-browser demo.
I am the main contributor to OpenScientist, an autonomous hypothesis-testing agent for scientific data. I built its provider and agent layers for hosted services and open models served through vLLM and llama.cpp, its air-gapped execution mode, and its Oh My Pi harness integration. I generally like to work with open models, currently favoring Qwen3.8-Flash-Next.
During my PhD, I was the main contributor to ensmallen, embiggen, and GRAPE, a Rust and Python ecosystem for large-scale graph processing and representation learning.
I develop geometric-traits, a trait-first, no_std Rust graph algorithms library implementing, among others, Blossom V and Micali-Vazirani matching, Boyer-Myrvold planarity, VF2 subgraph isomorphism, Leiden community detection, and Barnes-Hut ForceAtlas2. I also maintain the probabilistic sketching libraries hyperloglog-rs and minhash-rs, with more of the same family in the making.
Within the Earth Metabolome Initiative, I build Rust libraries for cheminformatics and mass spectrometry, including smiles-rs, smarts-rs, molecular-formulas, elements-rs, mascot-rs, and npclassifier-rs.
I have also developed Python utilities including csv_trimming, dictances, compress_json, pygifsicle, silence_tensorflow, and dict_hash.





