Aller au contenu
CESTOLIV
297 EN

42, born2code

Voici un récap de mon cursus à l'école 42, des projects effectués, des notes obtenues et du code sources, HF !

J'étais sur le campus de 42 Lyon, de la promo 2021, piscine d'Août (objectivement la meilleure) !

(Si vous êtes dans le cursus, pas de triche 🤫)

Note100/100

mars 2023

ft_transcendence

Voir le dépôt

4 personnes pour travailler sur le premier projet de développement web de 42. L'objectif : créer un Pong multijoueurs en ligne avec des fonctionnalités de chat (amis, channels) et de matchmaking (+ quelques bonus de notre part).

TypeScript · NestJS · React.JS · WebSockets · SCSS · OAuth · 2FA

Note125/100

décembre 2022

ft_irc

Voir le dépôt

ft_irc est un projet de groupe qui, comme son nom l'indique, nous fait recréer un serveur IRC (from scratch, en C++). Le serveur suit la spécification RFC 2812 et peut donc être utilisé avec les clients IRC existants.

C++ · Network

Note125/100

novembre 2022

Inception

Voir le dépôt

On utilise Docker de façon poussée avec docker-compose dans ce projet aux multiples contraintes : hébergement d'un wordpress multi-conteneur, reverse-proxy et certificats SSL. J'ai profité de mon expérience avec Docker pour faire tous les bonus : un cache avec Redis, un FTP, un GUI pour la base de données, du monitoring et la création puis l'hébergement d'un site NestJS.

Docker · Network · SysAdmin · Monitoring · NestJS

Note120/100

septembre 2022

cub3D

Voir le dépôt

cub3D est un projet graphique en duo dans lequel nous créons un jeu qui ressemble à un vieux FPS, comme Wolfenstein 3D. Nous avons donc du Raycasting à faire en C avec une bibliothèque graphique très minimaliste, la MinilibX (elle ne permet que d'afficher un pixel).

C · 3D

Note100/100

août 2022

NetPractice

Voir le dépôt

NetPractice est un projet de 10 exercices qui ont pour objectif de nous faire découvrir le réseau (masques de sous-réseaux, routeurs, switch, etc.).

Network

Note100/100

juin 2022

Piscine C++

Voir le dépôt

Une piscine de C++, composée de 8 modules destinés à approfondir les notions de classes et de polymorphismes, de templates et de casts.

C++

Note111/100

avril 2022

Minishell

Voir le dépôt

Gros projet en binome. L'objectif est de créer un interprêteur de commande qui mime un bash. Minishell gère les variables d'environnement, lance des programmes et gère leur retour, les pipes et les redirections. Nous avons aussi un certain nombre de fonctions built-in, comme cd, echo, env, exit, export, pwd et unset.

C · Bash

Note125/100

mars 2022

Philosophers

Voir le dépôt

Modéliser le problème du Dîner des philosophes. Dans un premier temps en représentant chaque philosophe par un thread et chaque fourchette par un mutex, et dans un second temps en représentant chaque philosophe par un fork (processus enfant) et les fourchettes par des semaphores.

C

capture d'écran du visualizer de push_swap
Note115/100

février 2022

push_swap

Voir le dépôt

Trier une pile avec le moins d'opérations possibles à l'aide d'une pile temporaire. Nous avons droit à deux opérations qui n'existent normalement pas sur les piles, rotate et reverse rotate. Pour le résoudre, j'ai créé mon propre algorithme de tri (c'est en réalité probablement l'adaptation d'un algorithme existant, adapté au sujet et à ces deux instructions supplémentaires).

C · Algorithme

Note125/100

janvier 2022

minitalk

Voir le dépôt

Faire communiquer deux programmes, un serveur et un client, via deux signaux unix envoyé avec KILL, c'est-à-dire envoyer les données en binaire via des signaux unix. Difficultés ? Recevoir les bits dans l'ordre d'envoi ;)

C · Unix · Signals

Note125/100

janvier 2022

FdF

Voir le dépôt

Premier programme graphique, nous devons afficher une carte de points en 3D, reliés par des segments (FdF, Fils de Fer). La carte est interactive (déplacement, rotation, zoom) et est développée avec une librairie graphique simpliste, nous permettant seulement de placer des points en 2D.

C · 3D

Note125/100

décembre 2021

ft_printf

Voir le dépôt

Recréer la fonction printf de la librairie standard C. ft_printf fonctionne exactement de la même manière, mais "uniquement" avec les flags suivant : %cspdiuxX et les flags de précision : -0.# +.

C

Note125/100

novembre 2021

get_next_line

Voir le dépôt

Recréer la fonction getline() de la librairie standard C. get_next_line permet, comme getline, de retourner chaque ligne d'un fichier successivement. Il est possible de faire varier la taille du buffer.

C

Note125/100

novembre 2021

Born2beroot

Voir le dépôt

Installer Wordpress sur un serveur Debian en suivant des règles très strictes en matière de sécurité, de chiffrement et de partitionnement. Création d'un script simple de monitoring avec Bash.

Debian · Security · Encryption · Wordpress · Monitoring · Bash

Note125/100

novembre 2021

Libft

Voir le dépôt

Ce projet a pour but de nous faire créer une lib(ft, pour forty-two) contenant plein de fonctions très utilisées en C, mais que nous recodons à partir de rien. On utilisera notre propre librairie standard "libft" dans les futurs projets de 42.

C