Projects
From web applications to the systems underneath them. A selection of things I’ve built to solve problems and understand how software works.
Browse GitHubAll projects
15 projects- Web application · Team project
7irafi
A marketplace for local services
- Java
- Spring Boot
- Angular
- Kafka
- PostgreSQL
- Docker Compose
Connects clients with local professionals, with real-time chat and notifications.
My contribution
- Contributed across the Angular frontend and Spring Boot microservices, including service discovery, gateway routing, and JWT authentication.
- Used PostgreSQL databases per service and Kafka for asynchronous events. Built WebSocket chat and containerized the application with Docker Compose.
- Systems programming
LocalServer
An HTTP/1.1 server built in Rust
- Rust
- Sockets
- Non-blocking I/O
- CGI
Serves HTTP requests through a single-threaded, event-driven architecture with non-blocking I/O.
My contribution
- Built request parsing, chunked transfer handling, GET/POST/DELETE methods, file uploads, cookies, and sessions.
- Added configurable routes, multiple listening ports, redirects, custom error pages, and CGI execution.
- Language implementation
Custom Language Compiler
From source code to x86-64 assembly
- Rust
- x86-64 Assembly
- Compiler Design
A compiler written in Rust for a custom programming language with typed expressions, control flow, and functions.
My contribution
- Implemented lexical analysis, parsing, type checking, and assembly code generation.
- Added variables, arithmetic and logical operations, and functions with parameters and return values.
- Web application
01Blog
A social blogging platform
- Java
- Spring Boot
- Spring Security
- Angular
- PostgreSQL
A social blogging platform with multimedia posts, subscriptions, personalized feeds, and moderation tools.
My contribution
- Implemented authentication and role-based access for users and administrators.
- Web application
Social Network
Social features with real-time messaging
- Go
- SQLite
- WebSockets
- Docker
Profiles, follow requests, groups, events, and private and group messaging.
My contribution
- Built session authentication, privacy controls, WebSocket notifications, and SQLite migrations.
- Web application
Real-Time Forum
Discussions and private messaging
- Go
- JavaScript
- SQLite
- WebSockets
- Docker
A single-page discussion forum with categorized posts, comments, and reactions.
My contribution
- Added private messaging, online presence, and paginated chat history with debounced scrolling.
- Web application
AirBnB Clone
A property listing platform
- Python
- Flask
- SQLAlchemy
- MySQL
- jQuery
- Nginx
- Gunicorn
A property listing application with browsing and filtering.
My contribution
- Built data models, a management console, and REST APIs with JSON and MySQL persistence, then deployed with Nginx and Gunicorn.
- Web application
DopShop
A marketplace for Moroccan products
- React
- Django
- TanStack Query
- Axios
- React Router
An e-commerce platform for Moroccan products with search, cart, checkout, user accounts, and an admin dashboard.
My contribution
- Connected the React frontend to Django with Axios and TanStack Query.
- Multiplayer game
Bomberman
A real-time multiplayer browser game
- JavaScript
- Express.js
- WebSockets
A browser game for 2–4 players, built with a custom JavaScript framework and DOM rendering.
My contribution
- Implemented multiplayer synchronization, chat, bomb explosions, destructible blocks, and power-ups.
- Algorithms
Lem-in
Graph pathfinding and ant simulation
- Go
- Breadth-First Search
- Graph Algorithms
A command-line ant simulation that routes movement through a graph.
My contribution
- Adapted breadth-first search to schedule routes and reduce turns while enforcing room and tunnel capacity constraints.
- Systems programming
Unix Shells
Command-line shells in C and Rust
- C
- Rust
- Unix
Shells in C and Rust supporting pipelines, I/O redirection, environment expansion, and built-in commands.
My contribution
- Implemented process execution, signals, history, and file utilities in Rust.
- Linux administration
Born2beroot
A configured and secured Linux server
- Debian
- Bash
- LVM
- SSH
- UFW
- AppArmor
- Cron
Configured a Debian virtual machine with encrypted storage, SSH access controls, firewall rules, and AppArmor.
My contribution
- Automated monitoring with Bash and cron and deployed WordPress with Lighttpd and MariaDB.
- Computer graphics
miniRT
A 3D ray tracer built in C
- C
- MiniLibX
- Ray Tracing
- Vector Mathematics
A 3D ray tracer that renders spheres, planes, and cylinders from scene files.
My contribution
- Implemented intersections, ambient and diffuse lighting, hard shadows, camera configuration, and scene validation.
- Networking
ft_irc
A multi-client IRC server
- C++98
- TCP/IP
- epoll
- Non-blocking I/O
An IRC server handling simultaneous clients through non-blocking sockets and an epoll event loop.
My contribution
- Added authentication, private and channel messaging, and channel operator controls.
- Computer architecture
Hack Computer
A computer built from logic gates
- HDL
- Assembly
- Computer Architecture
- Compiler Design
Built a computer from logic gates, including its ALU, memory, registers, and CPU.
My contribution
- Developed an assembler, VM translator, Jack compiler, and OS library for memory, I/O, graphics, and system services.
Have a project in mind?
Let’s talk