Write-ups about my projects and research
Hacking cars in JavaScript (Running replay attacks in the browser with the HackRF)
16/09/2024
A few months ago, I prototyped a web-based tool to run replay attacks using HackRFs and the WebUSB API, and unlocked my friend's car remotely.
Control UIs using wireless earbuds and on-face interactions
10/09/2023
A few weeks ago, I stumbled upon a very cool research project around using the acoustic signature of gestures to create new interactions with interfaces and decided to implement a prototype version of it in JavaScript.
Voltage, current and resistance in electrical circuits
07/08/2023
Some notes from reading chapter 4 of the book 'How computers really work'.
Notes from competing in my first CTF
04/04/2023
Last weekend, I competed in the National Cyber League (NCL), my first cybersecurity CTF. I wrote down notes about the tools I used in the challenges and wanted to share in case anyone is curious to know how CTFs work.
From Wi-Fi to Li-Fi, sending data via light using Arduino and JavaScript
13/02/2023
Different parts of the electromagnetic spectrum can be used to transmit information. Using visible light, data can be encoded and transmitted using a technology called Li-Fi which aims at using your existing lights for wireless communication.
Cybersecurity attacks using Deno
07/12/2022
When I'm sharing what I learn about cybersecurity in open-source, a reaction I've seen people have is to mention Deno as a tool that will fix the problem. The risk of supply-chain attacks still exist and I wrote this post to show how it can be done.
Setting up a reverse shell with Vultr
04/12/2022
I used Vultr recently and struggled to create a reverse shell so this post is gathering the steps that worked
Demystifying machine learning via Bluetooth with arduino
31/10/2022
The first time I experimented with TensorFlow.js for micro-controllers, I got really excited about the fact that a machine learning model was transferred via bluetooth to my Arduino. In this post, I am going to explain how it works.
Gesture-based payments
10/10/2022
Recently, I've been experimenting with gesture control and researched how this technology could be used as a payment method.
Building an aircraft radar system in JavaScript
29/08/2022
A few years ago, I came across an awesome talk by Thomas Watson in which he talks about how he built AirplaneJS, a web app that picks up ADS-B radio signals from airplanes and plots them in real time on a map in the browser. I had no idea this was possible in JavaScript so I started looking into it.
Gaining remote access to a computer with a reverse shell attack in Node.js
28/06/2022
I recently learnt what a reverse shell is and got excited to experiment running this kind of attack via a Node.js module. This post will go through my thought process and the different options I tried.
Ultrasonic payments
06/06/2022
Experimenting with ultrasonic data transmission in JavaScript as a payment method.
Running a ransomware attack in a Node.js module
05/05/2022
A couple of weeks ago, I experimented with creating a small ransomware script, and looked into how to run an attack in a Node.js module.
Building UIs in Figma with hand movements
20/01/2022
I've played around with hand detection using TensorFlow.js in the past but since they released the ability to detect multiple hands, I've wanted to explore building UIs with hand movements.
Making an interactive digital frame with head-tracking using Three.js and TensorFlow.js
01/08/2021
Over the past few weeks, I've been working on a new side project to replicate a visual effect called "head-coupled perspective" to make interactive art with head tracking, using Three.js and TensorFlow.js.
Toggle dark/light mode by clapping your hands
14/04/2021
A few days ago, we released dark mode in beta. While we're still iterating on it, I built a Chrome extension to easily toggle it by clapping my hands.
Speeding up Storybook locally by running filtered stories 🚀
08/04/2021
Working on a big monorepo means that developing with Storybook can become painfully slow. A small change can drastically speed it up!
Setting up a RaspberryPi without monitor and keyboard
05/04/2021
For a long time, I thought a keyboard and monitor were needed to do the initial setup of a RaspberryPi. However, I recently learnt that you can do this using only another computer!
Predicting indoor location using machine learning and wifi information
06/03/2021
After trying out a Python project called whereami, I spent some time trying to replicate it in JavaScript.
Creating low poly 3D scenes with Spline
27/01/2021
Quick overview of Spline, a 3D design tool for web experiences and how I spent a few hours creating a low-poly scene.
Creating a Github action to detect toxic comments using TensorFlow.js
16/08/2020
Over the weekend, I spent a few hours building a Github action to automatically detect potentially toxic comments and PR reviews.
Yeah, nah... I'm not ok
07/07/2020
If you've been following my work, you may be used to seeing weird JavaScript projects exploring HCI, but this post won't be about that.