Skip to content
Loïc Ortola

Projects

Things I built on evenings and weekends: web apps, games, hardware, libraries and training material.

RXSampler
A pad sampler for iPhone and Android: load a bank, tap the pads, play your set.

RXSampler turns a phone into a pad sampler in the spirit of the AKAI MPX8. Pads fire the instant your finger lands, hits stack on top of each other, and a playing pad's outline drains clockwise with the time left on the sample, readable from a metre away.

It's built for a live set: banks of 2 to 16 pads, eight settings per pad (gain, loop, touch behaviour, choke, fade-out...), a stage lock so only the pads respond, and playback that keeps going with the screen off. Import WAV, MP3, AAC, OGG or FLAC, and share whole banks as a single ZIP. Free, with no account, no ads and no network access, installed straight from the site.

iOSAndroidAudioVisit
An eight-pad live set, with two pads playing
An eight-pad live set, with two pads playing
Landscape layout: four columns, master fader on the left
Landscape layout: four columns, master fader on the left
FastLoader
Send heavy files with one simple link, protected if needed and deleted when it expires.

FastLoader is a file transfer service in the spirit of WeTransfer, hosted in France. Drop your files, give them a title and a note, and share the link. Each transfer can be locked with a password, capped at a number of downloads, and set to expire: files are deleted automatically soon after.

No account is needed to send a transfer that lasts up to three days. With an account, you keep track of your transfers, change their settings, and create API keys to send files from your own tools. No ads, no third-party analytics, no tracking: files are only stored to be delivered to the people who have the link.

Next.jsReactFirebase AuthOVHcloudVisit
The FastLoader home page, with the upload form next to the headline
The FastLoader home page, with the upload form next to the headline
The upload form on a phone: password, expiry and download limit
The upload form on a phone: password, expiry and download limit
DécouPano
Free online cutting plans for wood panels, from your first cabinet to a whole kitchen.

DécouPano plans panel cuts in the browser, for free and without an account: enter your panels and parts, or describe a cabinet or a drawer by its overall dimensions, and it builds the cutting plan, the list of panels to order and a 3D preview.

It doesn't hand you just one plan: it compares several on price, number of cuts, offcut area and largest reusable offcut, and flags the best one. Edge banding, saw kerf, grain direction and every common panel type (melamine, MDF, plywood, chipboard, solid wood) are supported. The site is in French.

Next.jsReactVisit
Cutting plans laid out in 3D on the DécouPano home page
Cutting plans laid out in 3D on the DécouPano home page
Designing a tall cabinet by its overall dimensions
Designing a tall cabinet by its overall dimensions
Surroundify
A self-hosted spatial audio player: build a room, place your sounds in it, drive it from your phone.

Surroundify turns the computer wired to your speakers into a spatial audio player. Describe your room once, drag each speaker to where it really stands, then place every layer of a soundscape where you want to hear it: a forest with the stream on your left, rain outside every window.

It works with whatever you own, from a built-in output to an 8-output USB interface, an HDMI receiver or a Bluetooth speaker. Any phone on the network is the remote, with nothing to install. No cloud, no telemetry, no account: it installs with one npx command and runs on macOS, Linux and Windows.

Next.jsReactNode.jsSQLiteWebSocketsffmpegVisit
The Surroundify home page
The Surroundify home page
A 5.0 living room with wind, stream and birds placed around the listener
A 5.0 living room with wind, stream and birds placed around the listener
Homex
Room automations for Home Assistant, built from one panel, without YAML.

Homex is a Home Assistant integration that turns each room into a switch, a light group and native scenes. Wall switches, remotes and roller shutters are wired up in a few clicks from a single sidebar panel, and you never open a YAML file.

Every room and group gets plain, predictably named entities you can use in dashboards, voice assistants or your own automations. It runs entirely on your own instance: no cloud service, no outside network calls. Free, with its source on GitHub, and installed through HACS.

Home AssistantPythonTypeScriptVisit
Room switches driving the lights and shutters of a floor plan
Room switches driving the lights and shutters of a floor plan
The Homex panel in Home Assistant, with a room's lights, switches and shutters
The Homex panel in Home Assistant, with a room's lights, switches and shutters
Deadlock
An open-source coding and hacking game platform.

My biggest project. Deadlock is the first open-source coding and hacking game platform. The goal: reinvent the way people learn computer science, and the way companies find their new recruits.

Want to take part? Send me a message. Want to try it? It's live.

JavaJavaFXSpring BootDockerAnsibleReactReduxWebpackSassVisit
Deadlock player dashboard
Deadlock player dashboard
Deadlock story hall
Deadlock story hall
Takahoot
A physical, Nerf-proof controller for Kahoot quizzes.

Kahoot is a great quiz platform, mostly used in education. For Takima we wanted a better, cooler controller than a phone, so we made Takahoot: a physical target that plays Kahoot like a normal player and is triggered by a nice shot from your favourite Nerf gun.

Everything was made from scratch: 3D STL models, 3D-printed and laser-cut parts, an Arduino controller speaking a simple serial protocol, and a friendly Electron and Angular client.

ElectronAngularWebSocketsSolidWorksArduinoVisit
The Takahoot box
The Takahoot box
Takahoot triggers before mounting
Takahoot triggers before mounting
Blindtest Live
Live blind tests for 500 people, with a real-time app.

I love playing live music, and with some friends we came up with a concept: live blind tests. Guessing is easy and fun with 20 people. Not so with 500.

So we built an app to answer live, play jokers and follow the leaderboard, while everyone sings their favourite songs out loud. Come and join us at a concert around Paris: the band is The Bold Heads.

JavaSpring WebFluxNettyFirebaseAngularAnsibleWebSocketsVisit
Blindtest Live player app
Blindtest Live player app
Blindtest Live leaderboard
Blindtest Live leaderboard
IoT projects
Libraries and hardware from my Fablab evenings.
  • SSDP Java client: asynchronous, lightweight and bullet-proof, because I couldn't find a good one.
  • JSON-RPC 2.0 Java client: a full, lightweight implementation, compatible with Java 6+ and available on Maven Central.
  • nodemcu-espress: a memory-efficient Lua HTTP server for NodeMCU and ESP8266, with a Node-like, middleware-compatible API.
  • LED controller: an end-to-end 5050 LED controller with PCB, hardware list, firmware and Android app.
C++PCBLuaJavaAndroid
Remote control app for the LED controller
Remote control app for the LED controller
LED controller PCB v1 and v2
LED controller PCB v1 and v2

More on GitHub

Student trainings
Hackathon-style Java and JEE projects for university students.

Code review scheduler (1 week), Mood of the month (1 week), Room booking (2 weeks), CV administration (2 weeks).

Hands-on training material
Workshops you can run on your own.
Little Bob
Random name and sentence generator for Java, in English and French.
This website
A statically exported Next.js and shadcn/ui site, rebuilt from a 2018 React and Redux one.
Other contributions
Android libraries, Gulp plugins, a NodeMCU library, a Spotify Java API for Docker, a dashboard TV, and more.