Projects

Table of contents

You will find here a non-exhaustive list of computer science related projects I have done. Some projects have been done alone, others in groups.

I am convinced that open source is a great thing. On one hand it allows anyone to reuse existing code rather than spending time reinventing the wheel. On the other hand, code, whether good or bad, is always an interesting educational resource.

Therefore, when nothing prevented me from doing so, I made the source code accessible.

Personal Projects

Here are a few personal projects I’ve done. Most of them have no specific purpose but were simply good candidates to discover and learn new things.

These projects are likely to be archived and unmaintained at the time you are reading these lines.

paclogrs (2022)

Pacman log prettyfier, written in Rust

🔗 GitHub

Just wanted to learn Rust and decided to make a small CLI tool because, let’s be honest, clap is just awesome.

Also, who doesn’t want to be bLAZiNg FAsT? 🙃

nss-docker (2022)

A NSS service for Docker containers resolving

The goal of this project is to be able to resolve the hostnames of Docker containers from the host.

Even if I consider this a toy project, I have been using it without any problem since I developed it.

izitest (2020)

Test suite framework, written in Python

🔗 GitHub

Because testing your code is very important (despite what my Git* statuses may display 👀), I wanted to be able to do it easily and quickly without having to recode a test suite every time.

It was also the perfect opportunity to make a “complete” Python project with documentation, packaging, CI, etc.

I’llGetAJob (2019)

“TODO-list” style Android app to manage your job applications

🔗 GitHub

I simply wanted to learn a bit of Java and Android application programming.

School projects

Here is a list of projects I have completed during my studies.

AES (2022)

AES primitives implementation, written in C

🔗 GitHub

Implementation of the AES primitives in C, in order to learn the internal of the AES cipher and perform side channel attacks on it.

frozone (2022)

Linux Forensic and incident response helper, written in C

Final year project, the tool aims to help forensic investigators and incident responders in the task of collecting data about currently used resources as well as freezing them to prevent access or modification.

🔗 GitHub

K (2020)

A toy kernel, written in C and assembly

Learn the kernel fundamentals (see the The k project)

LKM (2020)

Loadable Kernel Module, written in C

🔗 GitHub 📖 Article

Quite basic kernel module, it simply gives read and write access, via a misc device, to the variable storing the kernel version.

The goal of this project was to learn kernel programming and IOCTL.

42sh (2020)

A bash-like shell written in C

Group project aiming to learn in detail how a shell works (redirections, job control, etc.) and how to write an LL parser.

Malloc (2019)

Basic implementation of the memory allocation functions of the C standard library (malloc, calloc, realloc)

The goal was to understand the memory allocation mechanism and manipulate the associated system calls.

Optical Character Recognition (2018)

Optical character recognition software written in C

Group project aiming to make us learn basic image processing and neural network concepts, applied to characters recognition.

3D game on Unity (2017)

3D exploration game on the theme of plants and nature

Group project with the goal of learning C# and game development with Unity.

Toy email client with symmetric encryption (2016)

Mail client with encryption, written in Python

Toy project, implementing three trivial symmetric encryption methods (Caesar, Vigenere and Hill ciphers), with the goal of learning Python and the basics of cryptography.