A collection of my projects developed during the 42 Porto Common Core, where I’ve been building strong fundamentals through hands-on work in C, C++ (C++98), and UNIX system programming.
A quick overview of my completed projects and current progress at 42 Porto.
| Project | Tools | Notions | Description |
|---|---|---|---|
| RANK 05 | |||
Webserv
|
C++ (C++98), Makefile, HTTP | Sockets, HTTP Protocol, Non-blocking I/O, epoll, CGI, Networking | Custom HTTP server built in C++98, inspired by Nginx architecture. Implements non-blocking I/O with epoll to handle multiple clients efficiently, supporting request parsing, routing via configuration files, static content serving, CGI execution, and custom error handling. |
C++ Modules CPP05 → CPP09
|
C++ (C++98), Makefile | OOP, Encapsulation, Inheritance, Polymorphism, Operator Overloading, Templates, Exceptions | C++ modules following the C++98 standard, focused on mastering OOP and writing clean, reusable, and modular code. |
| RANK 04 | |||
C++ Modules CPP00 → CPP04
|
C++ (C++98), Makefile | OOP, Encapsulation, Inheritance, Polymorphism, Operator Overloading, Templates, Exceptions | C++ modules following the C++98 standard, focused on mastering OOP and writing clean, reusable, and modular code. |
Cub3D
|
C, MiniLibX, Makefile | Raycasting, Textures, Rendering pipeline, Game loop, Collision |
A Wolfenstein 3D-inspired raycasting engine that renders a 3D maze from a 2D map, featuring textures, movement, and real-time rendering.
(Built with Miguel) |
| RANK 03 | |||
Minishell
|
C, Makefile | Tokenization, Parsing, Pipes, Redirections, Heredoc, Signals, Processes |
A simplified Bash-like shell, implementing pipelines, redirections, heredoc, env variables, and process execution using fork() and execve().
(Built with Miguel) |
Philosophers
|
C, Makefile | Threads, Mutexes, Deadlocks, Concurrency | Implementation of the Dining Philosophers Problem, focusing on synchronization, performance, and avoiding race conditions. |
| RANK 02 | |||
Pipex
|
C, Makefile | Pipes, Fork/Exec, Redirections, File descriptors |
Recreates shell piping behavior (cmd1 | cmd2) using low-level UNIX system calls and process handling.
|
So_Long
|
C, MiniLibX, Makefile | 2D graphics, Sprites, Map validation, Game loop | A small 2D game built with MiniLibX: map parsing, textures, collectibles, and movement logic. |
Push_Swap
|
C, Makefile | Sorting algorithms, Optimization, Stacks | Sorts a stack using limited operations, focusing on efficiency and minimizing total moves. |
| RANK 01 | |||
Born2BeRoot
|
Debian, VirtualBox, Bash | Sysadmin, Security, Networking, Virtualization | Configured a secure Linux VM with user policies, SSH, firewall rules, and monitoring. |
Get_Next_Line
|
C, Makefile | File descriptors, Static variables, Memory | Function that reads a file descriptor line by line, handling buffers and multiple FDs safely. |
Ft_Printf
|
C, Makefile | Variadic functions, Parsing, Formatting |
Rebuilt printf() by parsing formats and handling multiple conversions using variadic arguments.
|
| RANK 00 | |||
Libft
|
C, Makefile | Static library, Utilities, libc recreation | A custom foundational C library (libft), recreating standard utilities used across the 42 cursus. |

Webserv
C++ Modules CPP05 → CPP09
Cub3D
Minishell
Philosophers
Pipex
So_Long
Push_Swap
Born2BeRoot
Get_Next_Line
Ft_Printf
Libft