A selection of personal and professional projects.

Chocolatine
MySQL query builder in Python

Pitchoune
A Python library on top of Polars to load/save data and chat with LLMs.

Legitifier
Detects potentially fraudulent AI projects and misleading claims, to foster trust and data security across the open source ecosystem.

Mjolnir Agent
An autonomous web agent running 100% locally on a consumer-grade GPU — a demonstration of hardware-constrained optimization (edge computing) — with human approval tiers and a performance benchmark.

Claudeus
An isolated Docker sandbox to run Claude Code with --dangerously-skip-permissions without exposing the host machine.

RISC-V 32 Edu
An educational 32-bit RISC-V processor simulator, from NAND gates to out-of-order execution.

Athena
Proprietary software suite (KPAM) to manage the dataflow of customer review processing.

SmartCry
Proprietary RPA assistant (CVG Medical) for filling out tender response forms for French public hospitals.

pebrian.fr
Professional website with my portfolio, my résumé & my blog.

SimsLink
A Linux-native mod manager for The Sims 4, with automated crash diagnosis.
Chocolatine
A Python library for building complex SQL queries programmatically, with full IDE autocompletion and runtime type checking. Supports joins, subqueries, CTEs (including recursive ones), window functions, aggregations and set operations (UNION/INTERSECT/EXCEPT), without ever resorting to string concatenation. Published on PyPI, 99% test coverage.
Pitchoune
A wrapper around Polars for loading and saving data (xlsx, csv, tsv, jsonl) in normal or streaming mode, with column-by-column injection into decorated functions and recovery on failure. Also includes an LLM chat integration, locally via Ollama or through the OpenAI API.
Legitifier
A command-line tool that evaluates the credibility of a GitHub repository, particularly in the AI/ML space where inflated claims are common. Checks social signals (star patterns, fork ratios), repository metadata, code quality (secrets, tests, documentation) and history (dormancy, Telegram funnels). Each check is a standalone YAML-defined heuristic, easy to audit or extend. Supports LLM-based analysis (OpenAI, Anthropic, or local Ollama).
Mjolnir Agent
An autonomous web agent running entirely locally on consumer GPUs (RTX), with no API keys and no data leaving the machine. Explicit task decomposition with success criteria, post-action verification, and retry budgets that force a strategy change on failure. Human supervision scales by action type (reads auto-approved, reversible writes granted per session, engaging actions requiring individual approval), with mechanical guardrails against URL fabrication. Hybrid perception: DOM-first via Playwright, falling back to vision (virtual desktop + OCR). Orchestration via LangGraph, inference via TabbyAPI/ExLlamaV3, memory/RAG via Qdrant. Measured on an 11-task benchmark with programmatic assertions and full audit trails: 29/33 tasks passed on the latest campaign (88%).
Claudeus
An isolated Docker environment for running Claude Code with --dangerously-skip-permissions without exposing the host machine. Built on Anthropic's reference devcontainer, tailored for Python/ML work. Only the project directory is mounted (no access to ~/.ssh, cloud credentials, or the rest of the host filesystem). Default-DROP egress firewall with a whitelist (Anthropic API, GitHub, PyPI, Hugging Face, npm), non-root user required by Claude Code's permission-skip mode, authentication persisted in a named Docker volume, and optional Docker-in-Docker via sysbox-runc without --privileged.
Solar System Edu
An educational simulator of the solar system.
RISC-V 32 Edu
An educational simulator of a 32-bit RISC-V processor (RV32I), built from NAND logic gates up to out-of-order execution (Tomasulo's algorithm) with a full memory hierarchy. Offers several execution modes: sequential CPU, 5-stage pipeline with forwarding and branch prediction, and superscalar out-of-order execution (Reservation Stations, Reorder Buffer, Register Alias Table, Common Data Bus). Configurable memory hierarchy with L1/L2 caches and prefetching.
FastAPI (French translation)
A fork of the FastAPI framework used to contribute to the French translation of its official documentation, including the page on asynchronous programming and its analogy of a chef cooking burgers in a queue.
Agreste XLSX Scraping
A scraping script that automatically discovers and downloads new xlsx files published on agreste.agriculture.gouv.fr, fetching only new files, streaming them to keep memory usage low, with support for a certificate to secure the connection.
Registration API
A demo Flask web application: user registration and account activation via a PIN code sent by email. Designed to illustrate a clean architecture with no framework beyond Flask and a minimal set of external dependencies — including Chocolatine for SQL query generation. MySQL backend, passwords hashed with Bcrypt.
Athena
A complete proprietary software suite (KPAM) to manage the dataflow of customer review processing. Uses AI to classify, adjust tone and correct verbatims.
SmartCry
An RPA assistant for filling out tender response forms for French public hospitals. Substantially reduces the time needed to process a case file.
pebrian.fr
Personal site (blog, bio/résumé, project portfolio) built with Astro and Tailwind CSS v4, bilingual FR/EN with browser language detection and persisted choice. Glassmorphism aesthetic (animated background, frosted-glass cards) and native page transitions (View Transitions) with direction computed from the page's position in the menu. Skills grid and featured tags are computed automatically from career and project data, never hand-maintained. Persistent light/dark theme, résumé generated straight from the same data.
SimsLink
A mod manager for The Sims 4 built for Linux, where the official CurseForge client is Windows-only. Local mod library linked into the game's folder via symlinks (instant enable/disable, never touching your files), correct `.ts4script` handling (the game's undocumented rule on folder depth), CurseForge catalog browsing filtered by game version, one-click install/update, and dependency detection (translation mods). Standout feature: crash diagnosis, which parses `lastException.txt`, flags suspect mods straight from the traceback, and offers guided batch bisection when no single suspect is obvious — pure decision support, never auto-deleting anything. Also works without a CurseForge API key (browser-assisted mode). Python/FastAPI/ SQLite backend, HTML/CSS/JS frontend, filesystem watching via watchdog.
Scaleway Python Client
A Python client for the Scaleway API covering managed database management (RDB: instances, databases, users, privileges), the container registry (Registry: images) and serverless Functions/Containers (namespaces, deployment).