Articles

Auto CRUD

Auto CRUD thumbnail
Most web applications that manage data in a database perform at least some form of create, read, update or delete (CRUD) operations on stored records. Moreover, web applications also often expose those operations via a REST API. Most database tables - corresponding to the entities manged by the application - need their own CRUD controller and set of HTTP endpoints. Because of this, large applications can quickly become tedious to develop and maintain. However, the logic for each table is usually quite similar. Auto CRUD has been developed to reduce this workload.
ExpressProjectsNPMPrismaDatabase

A DIY quadcopter drone

A DIY quadcopter drone thumbnail
When I was a university student, drones were starting to get popular so I decided to make my own. I made two attempt at the idea: The first attempt involved designing the most of drone from scratch, its mechanical design as well as its electronics, including the remote controller. After that attempt proved less than satisfactory, I designed a new version of the drone, this time with off the shelf electronics.
ElectronicsArduinoProjects

Fixed asset management system

Fixed asset management system thumbnail
Many companies rely on spreadsheets to keep track of their fixed assets. However, spreadsheets are commonly designed to be edited manually, which makes automation difficult.
Node.jsWebProjectsMongoDB

Home automation

Home automation thumbnail
Few would argue that having lights turned on in a room without occupant is a waste of electricity. Ideally, lights and other appliances like air conditioners would only be turned on when someone is around. This project is a NodeJS application that gathers data about the occupancy of an apartment and manages appliances accordingly.
WIPNode.jsMQTTProjectsIoT

Minikube using insecure registry

By default, Minikube will not allow the usage of insecure docker registries. To change this setting, Minikube can be started as so:
KubernetesDockerTutorials

DHT and PIR sensor module

DHT and PIR sensor module thumbnail
This project consists of an HC-SR501 PIR motion sensor and a DHT22 temperature and humidity sensor connected to a Wemos D1 mini, an ESP8266 breakout board.
ESP8266ElectronicsProjectsIoT

Group management microservice

Group management microservice thumbnail
As a graph database Neo4J is a great choice to manage highly relational data. On the other side, a great number of applications feature at least some form of user management system. With Neo4J, those users can be store as nodes and connected to other items via relationships. A typical example would be a blog, where both articles and users are individual nodes while authorships are represented by a relationship.
WebNeo4JProjectsNode.jsWIP

Image upload microservice

Image upload microservice thumbnail
An image is worth a thousand words and probably even more if comparing their size in bytes. When designing my CMS, I originally intended to store images directly in the article, encoded in Base64. However, this would considerably increase the size of each article, making the whole CMS slow.
WebWIPNode.jsMongoDBProjects +1

Hazard prediction training web app

Hazard prediction training web app thumbnail
One of the companies I worked for put a lot of importance on safety. As a way to improve the employees' awareness of danger, there would be regular meetings during which participants would need to identify dangerous points in a picture. The results were written down and archived on paper, which I believed could be improved. So, I created this web application.
MySQLPHPProjects

Odroid XU4 server

Odroid XU4 server thumbnail
Having one's own server provides the ability to run web services 24/7. However, having a computer running all the time can significantly increase one's electricity bill. The objective of this project was to build a low power home server capable of running common software (Apache, Node.js, etc.) while only consuming little power.
3D printingProjectsLinux