Antoine Drabble
I have always been passionate about building things. Whether it is software, woodworking or music. This small website is a compilation of all the different projects I have made over the years and the different things I learned.

AlphaPocket: exploring protein pockets Search predicted protein pockets, inspect their structures, and compare precomputed ESM3 embeddings.
Protein Diffusion Viewer I built a Rust and wgpu renderer to inspect the successive frames of a protein diffusion model.
Sono Sono - sonosono.app Sono Sono is a guitar-practice application that combines audio transcription with microphone feedback.
Protein Viewer I've been building a molecular viewer in Rust with wgpu and hecs.
Audioma.io - Multilingual audiobooks Audiobooks generated at a chosen language level, for listening practice in eight languages.
Wheelbarrow keychain Making a small keychain for a gift in the shape of a wheelbarrow.
Taiko drum with Arduino and Piezo sensors I wanted to learn more about using arduinos as USB controllers and also make a usb MIDI controller for music.
Generating textures for 3d objects with LLMs I wanted to make use of AI to generate textures for my 3d assets. Read more to find out how.
Making necklaces So I needed to make a gift and decided on a necklace because I had a rock lying around that we recently got in the USA while travelling.
Bon Dimanche We decided to make a clothing brand with a friend.
Wieldy Music - Youtube Channel So I wanted to create a Youtube channel that would combine Music & Tech. I found out Harmonica tutorials didn't exist in this format so I did it.
Ludum Dare 55 - Dry Season We made another game for the Ludum Dare. This time it was a musical game.
Music Theory Sound is a pressure wave.
Learning about electronics Electronics is based on one of the 4 fundamental forces, electromagnetism.
Blog This blog has been through so many versions that I have lost count. In 2011 I was looking for a new project idea and I decided that making a Portfolio would be a good idea, so I created the V1 of this website as you can see in the image below.
Sound Generation with AI I started with music generation of MIDI files with Variational Auto Encoders some time ago.
Online multiplayer game Online multiplayer game with Steam integration.
Gradients An album I recorded alone to learn how to write, play, mix and master music. I spent some time trying to improve it but after a while I decided to just publish it and move forward with new songs.
Mapibre-rs and publishing a paper in the ISPRS A story about a great project which resulted in the publication of a paper in the ISPRS and me travelling to Florence to present said paper at Foss4g.
C++ synth and learning about Digital Signal Processing I decided to improve my c++ and audio skills by writing a custom VST plugin with the JUCE framework.
Baremaps and becoming a member of the Apache foundation Apache Baremaps is an open source toolkit and a set of infrastructure components for creating, publishing, and operating online maps. It provides a data pipeline enabling developers to build maps with different data sources. It offers live reload capabilities that allow cartographers to customize the content and the style of a map. It includes an attribution-free map schema and style that stimulates derived work. Finally, it provides services commonly used in online maps, such as location search and IP to location.
Moonalps I built the website for MoonAlps Festival in Bursins, Switzerland.
Coat hanger I made a youtube video for this project. I thought it would be fun to record the process of building something. I also quickly recorded the music at the end, I thought it would be better to have the video 100% DIY.
Playify Playify was a guitar-learning prototype.
The Metaforge and writing NFTs Following the NFT (non-fungible tokens) craze I decided to understand how the ERC-721 specification worked and was integrated in websites such as OpenSea.
Shlong Shlong was a small website for making long or short Bitcoin bets among friends.
Balcony bench This is a small bench I made for my balcony. It needed specific dimensions to fit in there.
Kitchen shelf This is a shelf I made for my new kitchen. It's made from maple wood.
Flat renovation I moved into a new flat and renovated it a little bit with my girlfriend. Before we moved in I took the dimensions and modeled everything by hand in blender. It took some time but it was fun to be able to design the flat before moving in. You can see the before after and the 3d models in the images below.
Carcassone After making Settlers of Catan and Ticket to ride, I wanted a new game. I made Carcassone because it only contains square pieces and no cards. Cards are annoying to make.
Modular Audio Modular Audio was a browser-based modular synthesizer project.
Furniture My girlfriend found a piece of furniture that she liked on Pinterest and we made it together. It was not difficult to make except for cutting at the right angles the vertical pieces of wood.
Ikea lamp So I needed a lamp for my room and found this lamp that I liked from ikea. I wanted to see if I could build it. I bought the wood from the store and found and old lampshade at the recycling center.
Simple light A simple light I built with a piece of wood that I found in the forest. I cut it square hollowed it and glues two pieces of wood together. I was happy with the result and gave it to my mom.
Alimentation I needed a variable alimentation to make some test for projects. I also wanted to be able to use aligator clips for quick testing and measure the voltage/amperage.
Nothing to hide: Ludum Dare 47 Since he joined the resistance, Bob is stuck in a loop where the cause keeps asking him favors… The game is all about hiding stuff in your apartment. Each time comrades ask you a favour, a police officer will come to inspect your house. If he sees an illegal object it’s game over ! Think fast as you only get a couple of seconds to hide each object !
ChambauCoin and understanding the blockchain I found an interest in the Blockchain after some friends started investing time and money in it.
Safe travels Safe Travels was a multiplayer game where players steered a plane by moving along its wings.
Living room table A small living-room table with a welded frame, made while learning stick welding.
Confluence Visualization Confluence Visualization explored documentation data using a treemap and other views.
Crypto predictions with LSTM The goal of this project was first to improve my knowledge on LSTM (Long Short Term Memory) recurrent neural network.
Homies We made Homies during the COVID-19 pandemic so neighbors could ask for help or offer it, including grocery shopping.
Dinner table I made this table for my living room. Nothing really complicated as I bought the feet already made. I used these threaded inserts (in the image below) for the first time and I really recommend it. It is very strong and it also allows for removing and putting back the feet multiple times without causing the wood to become weaker.
Ship wreck and exploring active ragdolls Ship Wreck was a pirate-game prototype where I experimented with shaders, procedural terrain, and active ragdolls.
Turbo mamy: Orbital game jam Turbo Mamy is the result of a 24-hour game jam during the 2020 Orbital Game Jam 3, created in collaboration with two friends. Despite the time constraints, we crafted a fully functional game featuring multiple levels and a conclusive ending. Additionally, I contributed two original songs to enhance the game's atmosphere.
Pill notifier I made Pill Notifier after running into notification problems with other medication-reminder apps.
Telecaster guitar A Telecaster-style guitar body made from a reclaimed hardwood table, with a bought neck.
Ticket to ride After making Settlers of Catan I wanted to make another game. I found that ticket to ride might be a good match however I didn't know how to make the map out of something durable. I could have printed it on paper but it would not be very strong. Then I thought about transfering ink from a printer onto wood. I quickly found on the internet that you can use acetone to transfer the ink from paper to wood. After scaling the map to print on multiple papers and flipping it, I applied it to the wood. It looked good but as good as I wanted to I retouched some parts of it with colour pencils. Then I finished it with some lacquer.
Pixel Pixel was a browser image editor written with JavaScript, HTML, and CSS, without a frontend library.
The Settlers of Catan The Settlers of Catan is one of my all time favourite game. One night I wanted to craft something and thought about this. After looking at the list of pieces online, I realised it would be very easy to make a minimal version of it so I could play it with friends the next day. It was a fun little project and we have made many games of Settlers of Catan since using this build.
Music generation and learning Variational Autoencoders I have always been interested in making music. However it is not an easy task. You often learn by first listening and playing music from other people. Then you can adapt what they did by adding your own twist or a fusion between multiple other songs. A change in the key, a different melody, different instruments, a different rythm, different lyrics, etc. There are so many possibilities.
Baseball bat I inherited a new tool from my grandfather so I really wanted to make something with it. I found a piece of wood and quickly made this bat. I then used bee's wax to finish it.
Chat Rooms Chatrooms supported audio and text chat in the browser.
Daily goals Daily Goal was an application for tracking personal goals and regular practice.
Yadlo I have managed the Yadlo Festival website for over 2 years. Yadlo is a free festival held at the Préverenges beach on the shores of Lake Leman. The website is a static site developed with a custom Content Management System (CMS), and it features an integrated shop powered by WooCommerce.
Boost guitar pedal A boost pedal for a guitar increases the strength of the audio signal, providing a volume boost for solos or enhancing overall signal strength. It works by using a transistor-based circuit to amplify the input signal, boosting the amplitude without introducing significant distortion. The pedal typically includes controls for adjusting the level of boost, allowing the guitarist to tailor the intensity of the volume increase. It is often used to push an amplifier into overdrive, add sustain, or lift the guitar's signal in a mix.
Thrust Worthy Thrust Worthy let players build a spaceship from blocks with different functions.
Metal detector with Arduino An Arduino metal-detector experiment and notes on how the detection coil works.
Ramble Ramble is a project I worked on alone for my master degree at the university. My goal was to fully create, from music, to 3d models, to programming, a Multiplayer Online game based on League of Legends and DOTA but with a different twist. The goal of the game is to work with your team to push a cart on the other side of the map by capturing strategic outposts.
Ramblin' Ramblin was a small multiplayer game built around short fights.
Twitter Sentiment analysis We used the Twitter API to retrieve all the tweets related to a specific crypto. We then analyze the sentiment of each of these tweets and ponder them based on multiple criterias. This gives us a total score in real time that we can correllate with the crypto real time price. We then plot all of this data in real time with Python.
VR phobia exposure prototype For my master's project, I built a VR prototype with scenes for fear of flying, heights, and spiders.
Cricket guitar The cricket guitar is another project after the skateboard guitar and cigar box guitar. This time I tried to make frets with cable ties.
Thorn Our team made Thorn during a game design course in my master's degree.
Game incubator I participated in the Game Incubator, an event organized by a close friend. The objective was to collaboratively develop a game within a tight timeframe, with a diverse team of around 15 people including developers, 3D artists, musicians, and more. My role involved providing assistance across various tasks and facilitating communication among team members.
Battleship I made a multiplayer browser version of Battleship using JavaScript, Socket.io, and Express.
Realistic escape game Escape games offer a fun genre without the need for complex mechanics, focusing on well-thought-out puzzles. Currently, Escaped is a tentative project aiming to create a realistic escape game set in an apartment.
Bike tracks This application let users discover mountain bike tracks by exploring them on a map and gives the following details on each track : the track itself drawn on the map, the altimetry profile and distance.
Cajon After building guitars, it was time to make some percussion. I saw a Cajon build video on youtube and decided to make my own. It is very basic but it works. I got snare wires and cut it in half. Then I screwed that inside the cajon so it pushes against the front thin wooden board.
Mountain Track Mountain Tracks Explorator was a project for the Information Visualisation master's course at HES-SO.
Quest Quest was my final bachelor's project at HEIG-VD.
Events Events was a web application made for a course at HEIG-VD.
Space project: Game concept Space Project was a mobile game about flying between planets with different gravitational pulls.
Trader simulator I made a trading game with Java and Android Studio to explore how news could affect a simulated stock market.
Swapp Swapp was an item-swapping website built with Django REST Framework and Angular 2.
Poll Speak Pollspeak was a web application for creating and answering polls.
Civilisation As a follow-up to my previous prototype, Tower Defense, I thought it would be a good idea to explore the idea of agents. Small independant agents that will work kind of like ants by trying to fetch resources and follow pheromones dropped by other agents.
Github Exporer GitHub Explorer used the GitHub API to explore repository data.
Tower Defense My plan was to make an infinite medieval tower defense. The map is procedurally generated and grows as your city grows. You have to build defenses in order to protect from enemies and find a good balance between expansion and defense. I also integrated some day/night cycles and post prcoessing effects to make the game more interesting.
Distortion pedal I was learning more about electronics and decided to find the simplest circuit to make. I ordered some basic components from Aliexpress and found a schematic that was very similar to this.
Oak Task Oak Task was a web application for storing, sorting, and tracking tasks.
Skate guitar I had broken skateboards lying around and I wanted to make another guitar. It is hard to find hard wood in Switzerland for cheap and I didn't want to make another guitar out of pine. I glued the skateboards together, got myself a handeld router and carved out the holes for the guitar parts to be put into.
Desk lights I wanted a dimmable desk light so I made a small one using a potentiometer and a led strip. It worked pretty good. I also made a blue led panel while I was testing out leds I bought on Aliexpress.
Keep in touch - Android chat application Keep in touch is a chat application for Android. It comprises an Android application made with Android Studio and a Scala backend written with the Play framework.
3D Chess I made a 3D chess game set in a forest. The goal was to make something fun and learn how to implement efficiently the rules of chess. Then try to write some AI capable of playing chess better than me (which is not very difficult).
Cigar box guitar I was bored and I had seen some photos of cigar box guitars online. So I went into my cellar, found some scrap wood and put it together into something resembling a guitar. Then I ordered the cheapest pickup and guitar pegs. It worked however I didn't have any fret on this guitar and I didn't have a bottletneck. So I took a bottle of wine, broke it and used the neck as a bottleneck. I later found out that there are better ways to cut it cleanly with hot and cold water.
Battlepong Battle Pong was a local multiplayer version of Pong for up to four players.
Foo fighter Foo Fighter was a 2D fighting game with square characters and local controller support.
Shapefight Shapefight was a multiplayer browser game inspired by slither.io and agar.io.
Oak Board Oak Board was a shared whiteboard built with Node.js and Socket.io.
Chain of Invincibility Chain of Invincibility was a command-line fighting simulation for a school project.
Starballs I started Starballs with a friend in a single night.
Oak Chat Oak Chat was a chat application built with Node.js and Socket.io.
Oak Store Oak Store tracked the last episode watched in a TV series or anime, along with movies.
Thiefs: Prototype I made an FPS prototype in Unity to learn how to calculate a shot direction and detect what it hit.
Arrow Arrows was a mobile game with an endless, procedurally generated level.
Paths: Puzzle mobile game Paths was a mobile puzzle game where you connected points of the same color without leaving any gray points.
Papyrus Papyrus was a note-taking web application built with Node.js, Express, and Bootstrap.
SqlArtan SqlArtan is a group project we developed at University. The goal was to have an alternative to phpmyadmin and other similar products for SQLite.
2.5d Fight game: Prototype I made prototypes for a 2.5D fighting game inspired by Super Smash Bros., one of my favorite games growing up.
Draw your path: Game idea I had the idea to make a platformer game where you draw a path with the mouse and you have to solve levels. A challenge might be to have a limited amount of ink, or to have physics apply to your drawing. This could also make for a great 2 player coop where one player draws and the other controls the character.
Survival: Prototype Survival was a game prototype about building a civilization and managing resources.
Opensound Opensound was an audio-sharing website for listening, downloading, and organizing playlists.
Fight Arena: Prototype After giving Unity a go, I decided to explore Unreal Engine.
Inleaf Inleaf was another attempt at a social network for sharing projects, following my Portfolio project.
Ball with Unity I learned how to use Unity and made my first game with it. You control a blue ball and you need to reach the green square. If you fall out or if you touch the red square you lose. There are a few levels of increasing difficulty.
Liri carrosserie I made this website for Liri's Carrosserie, an auto body repair business.
Bunk bed This project was back in the day when I lived in a very small room. I really needed to upgrade my room to have a proper desk for my computer. I decided that I should make a bunk bed with a desk underneath. I didn't need anything fancy, just functional and strong.
Lightleaf java mail client I decided to make a client in Java with Swing for the UI. It was a nice challenge, unfortunately I didn't go very far with this project.
Reddit RSS Chrome extension I made a Chrome extension that displayed posts from a subreddit using its RSS feed.
uData Equipped with my new knowledge about Chrome extensions, I decided to make a small extension I could use to store the TV series I was watching and which episode I was at. I created uData as a generic note taking (key-value) application that I could use for that purpose.
Topcoder newsletter I created a newsletter in HTML for the Topcoder website.
Midi controller with Arduino An Arduino experiment mapping potentiometers and buttons to MIDI messages.
Portfolio social website Portfolio was a social network for sharing creative work.
Krud online shop A sportswear shop built with PHP, MySQL, and HTML.
Super mario bros with C/SDL I made a small Super Mario Bros.
Version mapper An internal tool I developed while I was working at Kudelski. Its goal was to store and search different versions of a codebase.
Uniloft My second website project, a static website for an interior design company called Uniloft.
Tic Tac Toe in Java I started exploring game development by creating a Tic Tac Toe game using Java and the NetBeans IDE. It was a quick side project I worked on during a 3-day Java programming course. Despite the time constraints, I managed to fit in this fun project, making my first steps into the world of game development.
Usefulsoft UsefulSoft was the first website I made.