Articles

This very application, a CMS based on Neo4J

This very application, a CMS based on Neo4J thumbnail
Publishing articles on a website can be as simple as uploading HTML files to a web server. However, writing articles in raw HTML can be time consuming. A content management system (CMS) is an application designed to solve this issue by providing a simple way to create and manage web content directly from the web browser. There are many CMSs available, namely Wordpress or Joomla but I decided to create my own as a form of practice and in order to have it highly customized to my needs.
Node.jsWIPProjectsWebNeo4J

Habit tracker

Habit tracker thumbnail
Maintaining good habits can sometimes be hard. Recently, I've been looking at the way contributions are displayed on GitHub: a grid with a cell for each day, turning green if contributions have been made on that date. I realized that it motivated me to write code everyday, just to keep that grid as green as possible. So, I decided to create an app that provides a similar kind of motivation but for habits other than coding daily.
ProjectsFirebaseTypeScriptSvelte

Wardrobe and outfits management web app

Wardrobe and outfits management web app thumbnail
Have you ever bought a piece of clothing only to come home and realize you already had a similar one in your wardrobe? This happened to me the other day so I decided to fix the problem. To do so, I designed a simple web application in which the user can keep track of all the garments they own.
Vue.jsMongoDBMongooseVuetifyWIP +3

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