Marin de Vanssay
solo developer · nantes, france · engineering student at IMT Atlantique
email: marin-de-vanssay-de-blavous@imt-atlantique.net
01cv
One page. Click it to read it full screen.
02about
Who I am and what I'm on right now.
Engineering student at IMT Atlantique. I like building things that work end to end: a line-following robot, a home-made 3D scanner, a COVID risk calculator, and a set of web products I run on my own under the name Vanssay, from the backend and billing to the support mail.
Right now: getting Framefly in front of beta testers. Posting what I build, and what it earns, on X.
03vanssay
Framer and Webflow plugins I build and run on my own. I chose how they are structured and built them with AI coding assistants. Production is mine (the VPS, Docker containers, deploys, databases, backups), and so is the customer side: billing, invoices, support mail, marketplace submissions.
Reviews
[live]Pulls a business's Google and Trustpilot reviews and drops them on a Framer site as a native component, with one rating averaged across both platforms. The widget matches the site's fonts and colors, and the reviews keep syncing server-side, so the site owner never handles an API key. The first Vanssay product, and the one that made the first sale (July 2026).
Instagram Feed
[live]Paste a public Instagram handle, pick one of seven layouts, and the feed lands on your site and keeps itself up to date. No Instagram login. Same backend behind three front ends: the Framer plugin, a Webflow app ("Social Feed"), and a web version that gives you one snippet for any site builder.
Bouncer
[live]Blocks visitors by country, or lets only some countries in, and spots VPN and proxy traffic. Blocked visitors get a block screen styled like the site. Countries are resolved from a local GeoIP database, so most checks never leave the server.
Router
[live]Sends each visitor to the right page by country, region, language, device or VPN, or just suggests it with a banner they can dismiss. Rules run top to bottom and are decided server-side, so they change without republishing the site.
smaller things
- Google Reviews Live: a single Framer code component, sold as a one-off download.
- An admin dashboard for all products: signups, sales, usage, invoices.
how they are put together
Every product sits on one shared accounts service: one login across all of them, one Stripe setup, one invoice series. Each product is a small service of its own next to it.
framer / webflow editor ──► plugin ──┐
published sites ─────► embed script ─┼──► product APIs (reviews, bouncer, router, ...)
vanssay.net (static) ────────────────┘ │
└─► accounts: login + stripe billing
one VPS · docker compose · postgres per service
04code I wrote
School and personal projects where the code is mine, newest first.
LethalBOT
[2025–2026]A transport robot that carries a 2 kg load along a black line, guided only by a 40 × 30 pixel camera, on a Raspberry Pi Pico W. I wrote all of its code. Each row of the image gets its own black/white threshold, a linear regression through the black pixels gives the line's offset and angle, and both steer the two wheels.
The gear motors stall below about 20% power, so the final version drives them in 150 ms pulses (macro-PWM) and measures that dead zone itself at start-up with the wheel encoders. CircuitPython, with an OLED status screen and a PC tool to watch the camera feed over USB.
Contact-based 3D scanner
[2024–2025]A home-made 3D scanner modelled on an atomic force microscope. A tip rides over the object and tilts a mirror; a laser bounces off the mirror onto a row of six photodiodes, and which one lights up gives the height at that point. Stepper motors move the object under the tip point by point, on a wooden frame driven by two Arduinos that signal each other.
Heights are calibrated against a reference ramp with k-nearest neighbours, then drawn as a triangle mesh in OpenGL. A scan takes 4 to 5 hours for about 15,000 points, with a measured uncertainty of 180 µm. I wrote most of the code, in C.
RoomSafe
[2021–2022]A web app that estimates the risk of COVID-19 airborne transmission at an indoor event before it happens. The host enters the room size, ventilation, filtration, humidity, guest count, duration and mask use, and gets a score out of 10 plus a graph of how many guests, for how long, stay in the safe zone. Guests can then join the event with their own details and the score updates.
The risk model treats the room air as well mixed: virus-carrying droplets build up from an infectious guest and are removed by ventilation, filtration, settling to the floor and the virus decaying over time. Built with Python, Flask and SQLite.
05in progress
Built, not public yet.
Framefly
[private beta]You connect your web app and it gets explored once by an AI agent driving a real browser. From a short brief it then writes a script, films real actions in your app (no mockups), adds captions and music, and renders a demo or launch video. I built the agent, the render pipeline and the editor.
Maintenance Mode
[coming soon]Puts a Framer site behind a maintenance page while you still see the real site from your own IP. On and off is a server-side switch, so it takes effect instantly, without a republish.