Skip to content
02 — Index

All projects

Every project, with its code or demo. Most come from the École 42 curriculum; case studies explain what I built, the choices and the limits.

21 of 32 projects

  • Weight Your WageML & data

    Predicts developer salaries from the Stack Overflow survey. A 42AI AI Lab team project covering the full path from raw data to a public web app; the model is a deliberate baseline, the pipeline is the work.

    • Deployed · public web app
  • Multilayer perceptronML & data

    Classifies breast tumours as benign or malignant with a neural network written in NumPy: layers, losses and optimisers behind a Keras-like API.

    • 97.4 % val. accuracy
    • 569 samples
  • RAG-SyntecML & data

    Answers questions about the Syntec collective agreement and refuses off-topic ones before calling the LLM. 172 documents, 8,447 chunks, dense retrieval on Chroma.

    • 172 docs · 8,447 chunks
    • 55 labelled questions
  • CapTech IDFML & data

    Maps 79,099 Île-de-France companies from public Insee data across 16 technology domains. A company joins a domain only with a cited, dated source; 23 have one so far, in AI, cybersecurity and embedded systems. The code is private.

    • 79,099 companies
    • 1,343 indexed segments
  • LeafflictionML & data

    Classifies apple and grape leaf photos into 8 classes (6 diseases, 2 healthy) with a PyTorch CNN; augmentation balances the classes before training.

    • 94.1 % held-out accuracy
    • 8 classes
  • DSLRML & data

    Sorts Hogwarts students into one of four houses from their course scores, with one-vs-all logistic regression and gradient descent written from scratch — no ML library.

    • 4 houses
    • 13 course features
  • DataView-LiteML & data

    Explore a SQLite database in plain language: a local model writes read-only SQL, a validator checks it, and a second model phrases the answer. Built for a two-hour technical test.

    • 8 demo databases
    • 3 SQL safety layers
  • FlowML & data

    A voice-driven, AI-native OS prototype: you speak, and Claude answers aloud while assembling the on-screen interface in real time. Built solo in 24 hours at the Anthropic × Y Combinator hackathon.

  • Total Perspective VortexML & data

    A brain-computer interface that classifies EEG motor-imagery signals: a from-scratch CSP spatial filter feeds logistic regression, wired as a scikit-learn pipeline.

    • 109 subjects
    • 8–30 Hz band-pass
  • Learn2SlitherML & data

    A snake that learns to play through trial and error with tabular Q-learning — a Q-table over the head's four-neighbour vision, trained across thousands of self-play sessions.

    • 5,000 training sessions
    • 294 learned states
  • ft_linear_regressionML & data

    Linear regression with gradient descent, written from scratch, predicting a car’s price from its mileage.

  • RainfallSecurity

    Binary exploitation, with a teammate: 12 progressive levels of reverse engineering, from stack overflows to format strings and GOT overwrites.

  • OverRideSecurity

    Binary exploitation, with a teammate: 10 setuid binaries broken with ret2libc, ROP, format strings, an off-by-one and symlink abuse.

  • Inception-of-ThingsInfrastructure

    Built with a teammate: K3s clusters provisioned with Vagrant, then a K3d cluster running a GitOps deployment with Argo CD. The bonus adds a self-hosted GitLab deployed with Helm.

  • Cloud-1Infrastructure

    Ansible playbooks, written with a teammate, that deploy a Docker Compose WordPress stack to remote servers.

  • Weight Your Wage — WebWeb

    Web front end for Weight Your Wage: a static Next.js site on Cloudflare Pages that sends the survey form to the FastAPI service as an async job and polls until the predicted salary is ready.

  • WebservSystems

    HTTP server in C++ over sockets, testable with a real browser.

  • cub3DSystems

    Raycasting engine in C in the style of Wolfenstein 3D, built with a teammate: textured walls, a minimap and mouse look.

  • so_longSystems

    2D tile game in C with MiniLibX: sprites, textures and keyboard events; each map is checked so that every item and the exit can be reached.

  • ft_transcendenceWeb

    Multiplayer Pong web app in Django: live chat over WebSockets, accounts, an AI opponent and tournaments.

  • Transcendance V2Web

    Multiplayer Pong rebuilt as Node.js and Fastify microservices with a TypeScript front end. I was project manager in a team of five, worked on the game with two teammates and set up the ELK logging stack.