Zone01 · École par les pairs · Curriculum open-source

Learn by doing.
Build by failing.

24
Mois total
5
Piscines
130+
Exercices Go
92+
Exercices Rust
26
Sujets AI
8
Branches
01

Structure du cursus

01
Sélection
Go Piscine
⏱ 4 semaines
Programme de sélection. Intro CLI et programmation via Go. Seuls les candidats retenus deviennent étudiants.
12 Quests · 4 Exams · 3 Raids
02
Socle
Curriculum Global
⏱ 18 mois
4 piscines (Go, JS, Rust, Java) + 50+ projets. Objectif : niveau mid-to-senior Full Stack.
4 Piscines · 50+ Projets · Groupes & Solo
03
Spécialisation
Branches
⏱ 6 mois
8 branches thématiques. Chaque branche = piscine intro + 4 à 8 projets approfondis.
AI · Blockchain · DevOps · Cyber · Mobile · Java · Games · UX
02

Piscines — Exercices par Quest

💡 Cliquez sur un exercice pour lire l'énoncé
Go
Piscine Go — Sélection (4 semaines)
12 Quests · 4 Exams · 3 Raids · Shell + Golang · Testée via go-tests (Docker)
↗ Sujets
Quest 01Introduction au ShellCLI · curl · chmod · find · grep · jq13 ex
introduction
make-it-better
to-git-or-not-to-git
who-are-you
cl-camp1
cl-camp2
cl-camp3
cl-camp4
cl-camp5
cl-camp6
cl-camp7
cl-camp8
now-get-to-work
Quest 02Go — Variables, Boucles, If/Else, PrintRuneLoops · ASCII · z01.PrintRune8 ex
printalphabet
printreversealphabet
printdigits
isnegative
printcomb
printcomb2
printnbr
printcombn
Quest 03Strings, Pointers, Range LoopsModulo · Division · Pointeurs · atoi11 ex + Exam 1 + Raid 1
pointone
ultimatepointone
divmod
ultimatedivmod
printstr
strlen
swap
strrev
basicatoi
atoi
sortintegertable
Exam 14h — Quests 2 & 3
Raid 1Square Drawing — Projet groupe
Quest 04Algorithmique — Récursion & ItérationFibonacci · Primes · Factorial9 ex
iterativefactorial
recursivefactorial
iterativepower
recursivepower
fibonacci
sqrt
isprime
findnextprime
eightqueens
Quest 05Strings avancées, Runes, Bytes, Basestoupper · capitalize · printnbrbase18 ex
firstrune
nrune
lastrune
index
compare
toupper
tolower
capitalize
isalpha
isnumeric
islower
isupper
isprintable
concat
basicjoin
join
printnbrbase
atoibase
Quest 06-07Os.Args, Make & Append, SlicesArguments · Slices · Memory9 ex + Exam 2 + Raid 2
printprogramname
printparams
revparams
sortparams
makerange
concatparams
splitwhitespaces
split
convertbase
Exam 24h — Quests 2 à 6
Raid 2Sudoku — résolution algorithmique
Quest 08-09Structs, Fichiers, Fonctions en argumentStruct · File I/O · Higher order · map/foreach12 ex + Exam 3 + Raid 3
boolean
point
displayfile
cat
ztail
foreach
map
any
countif
issorted
doop
sortwordarr
Exam 34h — Quests 2 à 8
Raid 3File Reader — Manipulation de fichiers
Quest 10Hackathon — Tous concepts en équiperot · enigma · activebits · compact12 ex
rot14
abort
collatzcountdown
comcheck
enigma
pilot
fixthemain
compact
activebits
max
unmatch
Quest 11-12Linked Lists & Binary TreesData structures · Pointers · Recursion15 ex + Exam 4 QUAD
listpushback
listpushfront
listsize
listlast
listreverse
listforeach
listremoveif
listmerge
listsort
sortlistinsert
btreeinsertdata
btreeapplyinorder
btreesearchitem
btreelevelcount
btreeisbinary
Exam 48h QUAD — Examen final
Rs
Piscine Rust (4 semaines)
9 Quests · 3 Raids · Performance · Memory Safety · Testée via rust-tests (Docker)
↗ Exemple étudiant
Quest 01Types de base, Fonctions, StructsScalars · Conversions · Tuples11 ex
fibonacci2
scalar
temperature_conv
looping
speed_transformation
groceries
reverse_string
find_factorial
matrix_transposition
division_and_remainder
tuples
Quest 02Ownership, Borrow Checker, RéférencesMove · Copy · &ref · &mut10 ex
ownership
copy
borrow
doubtful
borrow_me_the_reference
changes
string_literals
name_initials
arrange_it
tic_tac_toe
Quest 03Structs, Strings, HashMapsHashing · Edit distance · Collections12 ex
circle
card_deck
arrays
strings
edit_distance
to_url
capitalizing
hashing
string_permutation
bigger
simple_hash
collect
Quest 04-05Error Handling, Enums, Option/ResultOption · Result · ? · panic!15 ex
unwrap_or_expect
panic
handling
profanity_filter
question_mark
banner
cipher
error_types
boxing_todo
macro_calculator
shopping_mall
mobs
does_it_fit
middle_day
expected_variable
Quest 06Traits, Génériques, Algèbre linéaireimpl Trait · Generics · Matrix · Lifetimes16 ex
traits
lifetimes
lalgebra_scalar
matrix
matrix_ops
matrix_mult
lalgebra_vector
blood_types
border_cross
roman_numbers
generics
roman_numbers_iter
vector_operations
events
delete_prefix
commits_stats
Quest 07-08-09Smart Pointers, Closures, IteratorsBox · Rc · RefCell · FnMut · Iterator trait27 ex
box_it
borrow_box
box_recursion
how_many_references
ref_cell
drop_the_thread
closures
sales
adding
get_products
highest
iterators
slices_to_map
step_iterator
project_motion
stars
pangram
diamond_creation
scores
pig_latin
spelling
rgb_match
rot
logic_number
searching
talking
ordinal
JS
Piscine JavaScript
Variables → Arrays → Objects → HOF → Async · Testée via js/tests
↗ js/tests
Quest 00Variables, Types & Primitiveslet · const · typeof · immutabilité7 ex
hello-there
declarations
primitives
expected_variable
redeclaration-of-love
mutability
unchanging
Quest 01Fonctions de basefunction · return · params · conditions10 ex
dog-years
count-from-10
count-up-to
average
abs
sign
duplicate
count-leap-years
is
a-winning-argument
Quest 02Arrays & Méthodesmap · filter · reduce · flat · slice12 ex
all
flat
filter
using-filter
using-map
using-reduce
reverser
chunky
index-of
slicer
keep
keep-cut
Quest 03Objets & Collectionsobject · destructuring · deep-copy · entries10 ex
object
animals
collections
nested-objects
access
deep-copy
pick-omit
manipulate-keys
manipulate-values
manipulate-entries
Quest 04HOF · Closures · Curryhigher-order · closure · curry · debounce8 ex
currify
curry-entries
debounce
throttle
sweet-curry
for-each
flow
find-expression
Quest 05Promesses & AsyncPromise · async/await · fetch · .then8 ex
broken-promise
kept-promise
keep-trying-or-giveup
get-json
gougle-search
nasa
sortable
clonernews
Quest 06Exercices avancésregex · Date · Set · Map · modules8 ex
how-2-js
ion-out
verydisco
verydisco-reverso
verydisco-forever
match-cron
greedy-url
valid-ip
DOM
Piscine DOM
Sélection → Événements → Projets dynamiques · Tests via dom/
↗ dom/tests
Quest 01Sélection & StylequerySelector · classList · style3 ex
select-and-style-dom
get-them-all-dom
pimp-my-style-dom
Quest 02Création & ManipulationcreateElement · appendChild · textContent3 ex
skeleton-dom
first-words-dom
class-that-dom
Quest 03Événements & InteractionaddEventListener · click · keydown3 ex
pick-and-click-dom
keycodes-symphony-dom
where-do-we-go-dom
Quest 04Projets dynamiquesDOM dynamique · state · rendu conditionnel3 ex
gossip-grid-dom
mouse-trap-dom
fifty-shades-of-cold-dom
Quest 05Projets avancéscomponents · render loops · drag & drop4 ex
action-reaction-dom
bring-it-to-life-dom
build-brick-and-break-dom
nesting-organs-dom
Quest 06Projets complexesanimation · canvas · jeux · architecture3 ex
the-calling-dom
harder-bigger-bolder-stronger-dom
bomberman-dom
Quest 07Async & Fetch DOMfetch · Promesses · rendu asynchrone6 ex
personal-shopper
happiness-manager
tell-me-who
tell-me-vip
tell-me-how-many
tell-it-cypher
Quest 08Projets finauxspa · routing · state management3 ex
friend-support
gatecrashers
uninvited
SH
Piscine Shell
CLI → Scripts Bash → Fichiers → Permissions · Testée via sh/tests
↗ sh/tests
Quest 00Introduction Shellterminal · git · man · chmod · curl5 ex
introduction
now-get-to-work
who-are-you
make-it-better
to-git-or-not-to-git
Quest 01CLI — cl-campsbash scripts · pipes · redirection · grep8 ex
cl-camp1
cl-camp2
cl-camp3
cl-camp4
cl-camp5
cl-camp6
cl-camp7
cl-camp8
Quest 02Navigation & Scriptsls · cd · cat · custom scripts5 ex
explain
teacher
left
custom-ls
master-the-ls
Quest 03Recherche de fichiersfind · grep · regex · JSON3 ex
find-files
find-files-extension
file-researcher
Quest 04Permissionschmod · chown · umask · setuid2 ex
easy-perm
hard-perm
03

Les 8 Branches — 6 mois de spécialisation

Repos dédiés par branche
🧠6 mois
Artificial Intelligence
ML, deep learning, NLP, image processing. Les sujets AI ont été déplacés vers public/subjects/ai/ — 26 projets disponibles.
PythonTensorFlowPandasSklearnNLP
↓ Voir les 26 sujets · 📖 README
⛓️6 mois
Blockchain & Crypto
Smart contracts, DeFi, NFTs. Développement dApps avec Solidity et Web3.
SolidityEthereumWeb3.jsHardhatReact
↓ Voir les 49 sujets · 📖 README
☁️6 mois
Cloud DevOps
Déploiement réseau, serveurs, IaC, CI/CD, conteneurisation et orchestration Kubernetes.
DockerKubernetesTerraformJenkinsAWS
↓ Voir les 69 exercices
🔐6 mois
Cybersecurity
Pentest, cryptographie, reverse engineering, exploitation, CTF et forensics.
CTFPentestCryptographyForensicsReverse
↓ Voir les 20 sujets
📱6 mois
Mobile Applications
Développement cross-platform avec Dart & Flutter. Apps iOS et Android, gestion d'état, REST.
DartFlutteriOSAndroidREST
↓ Voir les 27 sujets
🏗️6 mois
Java Full Stack
Spring Boot, Angular, PostgreSQL, MongoDB, Jenkins, SonarQube. Apps enterprise scalables.
Spring BootAngularPostgreSQLMongoDBJenkins
↓ Voir les 49 exercices & 11 projets
🎮6 mois
Video Games — Unreal Engine 5
Game design et development avec UE5 (Epic Games). Blueprints, C++, 3D, physique, animations.
Unreal Engine 5C++Blueprints3D
↓ Voir les 11 projets UE5
6 mois
User Experience UX/UI
UX Research, wireframing, prototypage haute fidélité, Design System, tests utilisateurs.
FigmaUX ResearchPrototypingDesign System
↓ Voir les 49 exercices & 4 projets
AI

Branch AI — 26 Sujets

Migrés vers public/subjects/ai/
ML/DS Machine Learning & Data Science Pandas · Sklearn · Stats · Viz 13 sujets
numpy
pandas
data-wrangling
visualizations
linear-regression
classification
model-selection
pipeline
forest-prediction
credit-scoring
training
matrix-factorization
spectral-learning
DL Deep Learning & Neural Networks Keras · TF · CNN · Vision 5 sujets
keras
keras-2
neural-networks
vision-track
emotions-detector
NLP NLP, Finance & Séries temporelles spaCy · NLTK · Time series · S&P500 8 sujets
nlp
nlp-scraper
nlp-spacy
document-categorization
time-series
kaggle-titanic
backtesting-sp500
sp500-strategies
Java

Branch Java Full Stack — Piscine & Projets

60+ exercices · 11 projets · public/subjects/java/
Piscine Fondamentaux — Chaînes, Nombres & OOP de base HelloWorld · Strings · Arithmetic · IsEven 11 ex
HelloWorld
StringConcat
StringLength
StringContains
StringReplace
IntOperations
FloatOperations
IsEven
Capitalize
Palindrome
SortArgs
Piscine POO — Classes, Héritage & Star System Classes · Inheritance · Override · Constructors 13 ex
Cat
CatInFile
StarProperties
StarGetters
StarConstructors
StarStatic
StarMass
StarPlanet
StarUtils
StarGalaxy
StarInheritance
StarOverride
Chifoumi
Piscine Collections, Generics & Streams List · Map · Set · Stream API · Lambda 10 ex
ListContains
ListEquals
ListSearchIndex
MapEquals
MapInventory
SetEquals
SetOperations
StreamCollect
StreamMap
StreamReduce
Piscine Design Patterns — GoF Classiques Builder · Factory · Observer · Singleton · Strategy 6 ex
Builder
Decorator
Factory
Observer
Singleton
Strategy
Piscine Adventure Series — RPG en Java Abstract · Interface · Exception · Polymorphism 9 ex
AdventureCharacter
AdventureAbstract
AdventureInterface
AdventureWeapon
AdventureMonster
AdventureSorcerer
AdventureTemplar
AdventureException
AdventureCatch
Projets Projets Branch Java Full Stack Spring Boot · Angular · MongoDB · Jenkins · Neo4j 11 projets
sharpen-it
buy-01
buy-02
angul-it
mr-jenk
lets-travel
travel-plan
neo4flix
nexus
safe-zone
lets-play
DevOps

Branch Cloud DevOps — Exercices & Projets

79 exercices · public/subjects/devops/
Bases Shell — Fondamentaux, Fichiers & Permissions Bash · Permissions · Env · File I/O 28 ex
hello-devops
append-output
array-selector
better-cat
burial
calculator
comparator
concat-string
count-files
details
dir-info
division
easy-conditions
easy-perm
env-format
file-checker
file-details
file-struct
hard-conditions
hard-perm
head-and-tail
set-env-vars
set-internal-vars
skip-lines
skip-secrets
write-file
read-file
strange-files
Avancé Shell avancé — Scripts, Processus & JSON Jobs · Background · find · JSON · Parsing 25 ex
auto-exec-bin
auto-jobs
backup_manager
bin-status
change-struct
check-user
find-files
find-files-extension
file-researcher
grades
greatest-of-all
in-back-ground
in-the-dark
input-redirection
job-regist
joker-num
json-researcher
object-to-json
string-processing
string-tokenizer-count
technical-file
custom-ls
custom-calendar
numerical-operations
numerical-operations-the-return
Cloud Cloud & Conteneurs — DevOps avancé Docker · Kubernetes · CI/CD · IaC · Serverless 16 ex
cloud-design
cloud-kube
cloud-press
easy-cloud
crud-master
crud-master-py
deep-in-net
deep-in-system
orchestrator
play-with-containers
road-to-ccp
road-to-dofd
serverless
hello-python
candidates-checker
credentials-searches
Cyber

Branch Cybersecurity — Sujets

20 sujets · public/subjects/cybersecurity/
Recon Reconnaissance & OSINT Passive · Active · OSINT 3 ex
active
passive
osint-master
Exploit Exploitation & Pentest Injection · Privilege escalation · Web hacking 9 ex
defuse
escalator
evasion
hole-in-bin
injector
local
pentest-kit
vuln-hunter
web-hack
Forensics Forensics, Malware & Obfuscation Reverse · Malware analysis · Ransomware · Steganography 8 ex
hidden-bytes
image-inspector
inspector-image
mal-track
malware
merge
obfuscator
ransomware-lab
Mobile

Branch Mobile — Dart & Flutter

27 sujets · public/subjects/mobile-dev/
Intro Fondamentaux Dart & Flutter Variables · Types · Null safety · Packages 11 ex
intro
variables
person
plain-sum
optional-sum
named-optional-sum
named-required-sum
package
student
university
data-structures
Apps Applications Flutter — UI, REST & Fonctionnalités Widgets · State · BLoC · REST · Maps · Chat 16 ex
bizz-card
bouncer
bloc-counter
chess
circle
favorite-images
hacker-news
kaquiz
map-markers
max-num
movie-list
quizz-app
secure-messenger
secure-notes
sky-map
stock-market
Games

Branch Video Games — Unreal Engine 5

11 sujets · public/subjects/gaming/
UE5 Projets Unreal Engine 5 — C++ & Blueprints UE5 · C++ · Physics · VR · Multiplayer · AI 11 ex
widget-factory
the-pages
vehicle-physics
firing-range
army-of-one
jumpo
stealth-boom
nascar-online-alpha
zombie-ai
mouse-vr
2-5-d-adventure
UX/UI

Branch User Experience — UX & UI Design

49 exercices + 4 projets · UX-UI/subjects/
UX The Olympics — Idéation, Prototype & Test Ideation · Prototyping · User-flow · Animation 7 ex
ideation-a
ideation-b
ideation-c
animation
prototyping
test
user-flow
UX Music On — JTBD, Card Sorting & Wireframes Card-sorting · JTBD · Site-map · Wireframes 7 ex
jtbd
card-sorting
heuristics
site-map
test-protocol
run-5-tests
wireframes
UX Seamstress — Empathy, Définir & Prototype Empathy map · Problem statement · Prototype 7 ex
ux-strategy
empathy
define
ideation
problem-statement
prototype
test
UX Sunday Night Movie — Wireframes & Tests User-flow · Wireframes · Feature testing · Iteration 7 ex
user-flow
wireframes
test-feature-1
test-feature-2
test-feature-3
iteration
wireframes-animation
UX Athele Keep Hydrated — Recherche & Personas User-interviews · Personas · Analytics · Journey 7 ex
user-interviews
analytics
personas
problem-statement
ideation
user-journey
prototyping
UX Going on Holidays — Interviews & Affinity Interview guide · Affinity diagram · Prototyping 7 ex
interview-guide
run-interviews
affinity-diagram
problem-statement
ideation
user-flow
prototyping
UX Let's Fight Harassment — Recherche & Stratégie Surveys · Interviews · Personas · Broadcast strategy 7 ex
competitive-analyss
surveys
interviews
personas
problem-statement
user-journey
broadcast-stategy
UI Colors & Moodboard — Couleurs, Typo & UI Challenges Color theory · Typography · Moodboard · UI challenge 11 ex
color-codes
color-combinations
find-the-colors
typography
typography-moodboard
moodboard
ui-challenge-timer
ui-challenge-spotify
ui-challenge-flight
ui-challenge-bitcoin-dashboard
ui-challenge-watches
UI Rules — Accessibilité, Grilles & Micro-interactions Grids · Consistency · A11y · Toggle · Time-pickers 11 ex
grids
consistency
breadcrumbs
radio-buttons
toggle-buttons
time-pickers
calendars
micro-interactions
multi-state
accessbility-website
accessbility-app
UI Heuristics — Évaluation & Recommandations Nielsen heuristics · Recommendations · Audit 2 ex
audit
recommendations
UI Atomic Design — Design System & Composants Atoms · Molecules · Organisms · Design system 5 ex
browsing
material-design
design-system-library
library-for-a-dating-app
library-for-climbing-addicts
UI Building an Interface — Styleguide & Screens Styleguide · Design screens · Animation · Desirability 5 ex
styleguide
design-screens
desirability-testing
animation
design-system-library
Projets Projets UX/UI — Prototypes haute fidélité Figma · User testing · Pitch deck · Full UX+UI cycle 4×2 parties
a-table — UX
a-table — UI
get-a-room — UX
get-a-room — UI
lets-do-sports — UX
lets-do-sports — UI
lets-fair-trade — UX
lets-fair-trade — UI
Blockchain

Branch Blockchain & Crypto — 49 Sujets

Wallets · Smart Contracts · DeFi · NFTs · public/subjects/blockchain/
Wallets Wallets, Cryptographie & Hashing Addresses · Keys · Signatures · SHA256 · BTC 9 ex
generate-address
random-wallet
get-account
hash-160
hash-file
send-hash
semi-brute
sign-service
signer
Tx Transactions & Nodes Ethereum ETH · gas · RPC · Infura · tx history 13 ex
local-node
local-node-info
node-dashboard
send-eth-transaction
send-ether
send-transaction
send-transaction-to-peer
retrieve-transaction-value
retrieve-transaction-in-out
retrieve-block-date
tracking-network
transfers-history
exploring-blockchains
Solidity Smart Contracts Solidity — Bases & Events EVM · Hardhat · Remix · ABI · Structs 11 ex
increment
basic-swap
basic-wallet
connect-to-metamask
check-document
register
register-with-events
time-and-place
time-is-money
payment-channel
donation
Tokens Tokens & NFTs — ERC-20 / ERC-721 ERC-20 · NFT · Events · Token sale · Marketplace 9 ex
minimal-token
usable-token
token-sale
eventful-token
non-fungible-cats
nft-marketplace
named-festival
organized-festival
lineup
DeFi DeFi & Protocoles avancés AMM · Liquidity · Yield · Financial instruments 7 ex
buy-tickets
fun-and-profit
artists-do-work
decentralized-finance
financial-instruments
read-secret
connect-to-metamask
05

Outils de test — La moulinette Zone01

Pas de norminette, mais un système complet
🐹
go-tests
Image Docker · Correction automatique · 541 commits
★ 47

La moulinette principale de la piscine Go. Image Docker contenant tous les tests unitaires pour chaque exercice. Le test passe silencieusement si correct, affiche des erreurs sinon — exactement comme la Norminette de 42.

⬇ Télécharger & Installer
git clone https://github.com/Tednoob17/zone-01
cd zone-01/01-edu-repos/go-tests
docker build -t go_tests .
↗ Voir dans ce dépôt
Utilisation
./test_one.sh isnegative
./test_all.sh
./test_with_docker.sh [EX] [PATH] [ALLOWED_FN]*
🦀
rust-tests
Image Docker · Correction automatique Rust
★ 5

Equivalent du go-tests pour la piscine Rust. Image Docker hébergeant les tests de chaque exercice Rust. Même fonctionnement : silence = succès, output = échec.

⬇ Télécharger & Installer
git clone https://github.com/Tednoob17/zone-01
cd zone-01/01-edu-repos/rust-tests
docker build -t rust_tests .
↗ Voir dans ce dépôt
Utilisation
./tests/test_exercises.sh
./tests/test_exercises.sh -real  # env production
🚔
rc — Restrictions Checker
Go · Vérificateur de fonctions interdites
Interne

L'équivalent de la Norminette côté sécurité de 42. Analyse les fichiers source Go pour vérifier que seules les fonctions autorisées sont utilisées. Chaque exercice a sa liste de fonctions permises (--allow-builtin).

⬇ Télécharger & Installer
# Option 1 — build depuis ce dépôt
git clone https://github.com/Tednoob17/zone-01
cd zone-01/01-edu-repos/rc && go build -o rc .
# Option 2 — installer avec go
go install github.com/01-edu/rc@latest
↗ Voir dans ce dépôt
Utilisation dans test_with_docker.sh
--allow-builtin github.com/01-edu/z01.PrintRune
strconv.Atoi os.Args fmt.Println
🏋️
go-tests-training
Go · Entraînement équipe contenu · Tests locaux
Training

Version d'entraînement du système de test pour l'équipe pédagogique. Permet d'écrire et tester de nouveaux exercices localement avant de les intégrer sur la plateforme. Même structure que go-tests mais vide de tests.

⬇ Télécharger & Installer
git clone https://github.com/Tednoob17/zone-01
cd zone-01/01-edu-repos/go-tests-training
docker build -t go_tests_training .
↗ Voir dans ce dépôt
Utilisation
./test_one.sh [nom_exercice]
./test_all.sh
🔁
CI/CD Plateforme
GitHub Actions · Docker · Gitea interne
Auto

Sur la plateforme Zone01, à chaque git push étudiant, les tests Docker tournent automatiquement. Résultat affiché dans le dashboard. Le score est calculé selon les tests passés — comme la moulinette d'Epitech.

Flow étudiant
git push → Docker tests → Score dashboard
📋
Audit Peer (Code Review)
Évaluation entre pairs · Grille de questions
Peer

Après les tests automatiques, les projets sont audités par d'autres étudiants. Grille de questions générées automatiquement : l'auditeur doit vérifier le fonctionnement, la compréhension du code, les bonus… Similaire à la soutenance de 42.

Combinaison tests + humain
Auto-tests → Peer audit → Validation finale