Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,11 @@ description: "Concise description of the content. This description is reused as
- **title**: phrased as a question (`"How to do X?"`, `"What is X?"`). Wrapped in quotes.
- **slug**: URL identifier, in kebab-case, without accents. No leading slash. The English and French versions can have different slugs (e.g., `how-to-create-a-weather` vs `creer-une-meteo`).
- **sidebar_position**: position within the section. Must match the filename prefix and be identical between locales.
- **description**: one or two sentence summary. Repeated verbatim as the first paragraph of the page body.
- **description**: one or two sentence summary, in **plain text** — no Markdown. This field feeds the SEO `<meta name="description">` tag and the category index cards, both of which render it as raw text, so `**bold**` or `` `code` `` markers would show up literally. The page's first paragraph repeats the same wording (see below).

### First Paragraph

The first paragraph after the frontmatter must repeat the `description` word for word. This ensures consistency between previews (lists, search engines) and the actual page content.
The first paragraph after the frontmatter must repeat the `description`'s wording. The paragraph may add Markdown emphasis (`**bold**`, `` `inline code` ``) for readability, but the `description` field itself stays plain text. This keeps previews (lists, search engines, cards) consistent with the page content while keeping the meta tag clean.

### Adding a Section

Expand Down Expand Up @@ -130,7 +130,7 @@ To translate the section label in French, add an entry under `i18n/fr/docusaurus
### Page Structure

1. **Frontmatter** with title, slug, sidebar_position, description.
2. **Introduction paragraph** (identical to the description).
2. **Introduction paragraph** (same wording as the description; may add `**bold**` / `` `code` `` emphasis).
3. **`##` sections** for major parts.
4. **`###` subsections** if needed. Do not go deeper than `###`.
5. **`## Conclusion` section** at the end: bullet list summarizing key points.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/03-arrays.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use arrays in Ruby?"
slug: arrays
sidebar_position: 3
description: "This chapter introduces **Arrays**, the most commonly used data structure in Ruby. An Array allows storing multiple values in a single variable."
description: "This chapter introduces Arrays, the most commonly used data structure in Ruby. An Array allows storing multiple values in a single variable."
---

This chapter introduces **Arrays**, the most commonly used data structure in Ruby. An Array allows storing multiple values in a single variable.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/04-hashes.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use hashes in Ruby?"
slug: hashes
sidebar_position: 4
description: "This chapter introduces **Hashes**, a structure that associates **keys** with **values**. Where an Array stores elements by position (index 0, 1, 2...), a Hash stores them by name."
description: "This chapter introduces Hashes, a structure that associates keys with values. Where an Array stores elements by position (index 0, 1, 2...), a Hash stores them by name."
---

This chapter introduces **Hashes**, a structure that associates **keys** with **values**. Where an Array stores elements by position (index 0, 1, 2...), a Hash stores them by name.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/05-conditionals.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use conditionals in Ruby?"
slug: conditionals
sidebar_position: 5
description: "This chapter introduces **conditionals**, the mechanism that allows a program to make decisions. Depending on the situation, the code executes one branch or another."
description: "This chapter introduces conditionals, the mechanism that allows a program to make decisions. Depending on the situation, the code executes one branch or another."
---

This chapter introduces **conditionals**, the mechanism that allows a program to make decisions. Depending on the situation, the code executes one branch or another.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/06-loops.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use loops and iterators in Ruby?"
slug: loops-and-iterators
sidebar_position: 6
description: "This chapter introduces the tools that allow you to **repeat** instructions: classic loops and iterators. We also discover how to read what the user types on the keyboard."
description: "This chapter introduces the tools that allow you to repeat instructions: classic loops and iterators. We also discover how to read what the user types on the keyboard."
---

This chapter introduces the tools that allow you to **repeat** instructions: classic loops and iterators. We also discover how to read what the user types on the keyboard.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/07-methods.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use methods and blocks in Ruby?"
slug: methods-and-blocks
sidebar_position: 7
description: "This chapter introduces **methods** (named, reusable pieces of code) and **blocks** (pieces of code that you pass to a method). This is a fundamental chapter: from now on, we can structure our code instead of writing everything in a single script."
description: "This chapter introduces methods (named, reusable pieces of code) and blocks (pieces of code that you pass to a method). This is a fundamental chapter: from now on, we can structure our code instead of writing everything in a single script."
---

This chapter introduces **methods** (named, reusable pieces of code) and **blocks** (pieces of code that you pass to a method). This is a fundamental chapter: from now on, we can structure our code instead of writing everything in a single script.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/08-classes.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to create classes and objects in Ruby?"
slug: classes-and-objects
sidebar_position: 8
description: "This chapter introduces **classes**, the central mechanism for organizing code in Ruby. A class groups data and behaviors in a single place."
description: "This chapter introduces classes, the central mechanism for organizing code in Ruby. A class groups data and behaviors in a single place."
---

This chapter introduces **classes**, the central mechanism for organizing code in Ruby. A class groups data and behaviors in a single place.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/09-inheritance.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use inheritance in Ruby?"
slug: inheritance
sidebar_position: 9
description: "This chapter introduces **inheritance**, the mechanism that allows a class to take everything another class defines and add its own specifics on top."
description: "This chapter introduces inheritance, the mechanism that allows a class to take everything another class defines and add its own specifics on top."
---

This chapter introduces **inheritance**, the mechanism that allows a class to take everything another class defines and add its own specifics on top.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/10-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use modules in Ruby?"
slug: modules
sidebar_position: 10
description: "This chapter introduces **modules**, a tool for organizing code and sharing behavior between classes. Modules are the natural complement to classes and inheritance."
description: "This chapter introduces modules, a tool for organizing code and sharing behavior between classes. Modules are the natural complement to classes and inheritance."
---

This chapter introduces **modules**, a tool for organizing code and sharing behavior between classes. Modules are the natural complement to classes and inheritance.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/11-prepend.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to extend existing code with prepend in Ruby?"
slug: extending-code-with-prepend
sidebar_position: 11
description: "This chapter presents techniques for **extending existing code** without modifying it directly. This is a fundamental concept in Ruby: you can enrich a class after its creation, even if you do not have access to the source file."
description: "This chapter presents techniques for extending existing code without modifying it directly. This is a fundamental concept in Ruby: you can enrich a class after its creation, even if you do not have access to the source file."
---

This chapter presents techniques for **extending existing code** without modifying it directly. This is a fundamental concept in Ruby: you can enrich a class after its creation, even if you do not have access to the source file.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/12-enumerable.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use Enumerable in Ruby?"
slug: enumerable
sidebar_position: 12
description: "This chapter introduces **Enumerable**, a module that provides over 50 collection manipulation methods. We also discover **Comparable**, which allows comparing objects with each other."
description: "This chapter introduces Enumerable, a module that provides over 50 collection manipulation methods. We also discover Comparable, which allows comparing objects with each other."
---

This chapter introduces **Enumerable**, a module that provides over 50 collection manipulation methods. We also discover **Comparable**, which allows comparing objects with each other.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/13-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to handle errors in Ruby?"
slug: error-handling
sidebar_position: 14
description: "This chapter introduces **exception handling**, the mechanism that allows you to react when something goes wrong in a program. Instead of silent crashes or unexplained `nil` values, you will learn how to raise, catch, and handle errors properly."
description: "This chapter introduces exception handling, the mechanism that allows you to react when something goes wrong in a program. Instead of silent crashes or unexplained nil values, you will learn how to raise, catch, and handle errors properly."
---

This chapter introduces **exception handling**, the mechanism that allows you to react when something goes wrong in a program. Instead of silent crashes or unexplained `nil` values, you will learn how to raise, catch, and handle errors properly.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/14-files.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to read and write files in Ruby?"
slug: reading-and-writing-files
sidebar_position: 15
description: "This chapter introduces reading and writing files, then **serialization**: turning Ruby objects into data that can be saved and reloaded later."
description: "This chapter introduces reading and writing files, then serialization: turning Ruby objects into data that can be saved and reloaded later."
---

This chapter introduces reading and writing files, then **serialization**: turning Ruby objects into data that can be saved and reloaded later.
Expand Down
2 changes: 1 addition & 1 deletion content/ruby/15-advanced-classes.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "How to use advanced class features in Ruby?"
slug: advanced-class-features
sidebar_position: 16
description: "This chapter introduces advanced class features: operator overloading, duck typing, `Struct`, and object identity management. These tools make classes more expressive and natural to use."
description: "This chapter introduces advanced class features: operator overloading, duck typing, Struct, and object identity management. These tools make classes more expressive and natural to use."
---

This chapter introduces advanced class features: operator overloading, duck typing, `Struct`, and object identity management. These tools make classes more expressive and natural to use.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les tableaux en Ruby ?"
slug: tableaux
sidebar_position: 3
description: "Ce chapitre présente les **Array** (tableaux), la structure de données la plus utilisée en Ruby. Un Array permet de stocker plusieurs valeurs dans une seule variable."
description: "Ce chapitre présente les Array (tableaux), la structure de données la plus utilisée en Ruby. Un Array permet de stocker plusieurs valeurs dans une seule variable."
---

Ce chapitre présente les **Array** (tableaux), la structure de données la plus utilisée en Ruby. Un Array permet de stocker plusieurs valeurs dans une seule variable.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les tables associatives en Ruby ?"
slug: tables-associatives
sidebar_position: 4
description: "Ce chapitre présente les **Hash** (tables associatives), une structure qui associe des **clés** à des **valeurs**. Là où un Array range les éléments par position (index 0, 1, 2...), un Hash les range par nom."
description: "Ce chapitre présente les Hash (tables associatives), une structure qui associe des clés à des valeurs. Là où un Array range les éléments par position (index 0, 1, 2...), un Hash les range par nom."
---

Ce chapitre présente les **Hash** (tables associatives), une structure qui associe des **clés** à des **valeurs**. Là où un Array range les éléments par position (index 0, 1, 2...), un Hash les range par nom.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les conditions en Ruby ?"
slug: conditions
sidebar_position: 5
description: "Ce chapitre présente les **conditions**, le mécanisme qui permet à un programme de prendre des décisions. Selon la situation, le code exécute une branche ou une autre."
description: "Ce chapitre présente les conditions, le mécanisme qui permet à un programme de prendre des décisions. Selon la situation, le code exécute une branche ou une autre."
---

Ce chapitre présente les **conditions**, le mécanisme qui permet à un programme de prendre des décisions. Selon la situation, le code exécute une branche ou une autre.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les boucles et les itérateurs en Ruby ?"
slug: boucles-et-iterateurs
sidebar_position: 6
description: "Ce chapitre présente les outils qui permettent de **répéter** des instructions : les boucles classiques et les itérateurs. On découvre aussi comment lire ce que l'utilisateur tape au clavier."
description: "Ce chapitre présente les outils qui permettent de répéter des instructions : les boucles classiques et les itérateurs. On découvre aussi comment lire ce que l'utilisateur tape au clavier."
---

Ce chapitre présente les outils qui permettent de **répéter** des instructions : les boucles classiques et les itérateurs. On découvre aussi comment lire ce que l'utilisateur tape au clavier.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les méthodes et les blocs en Ruby ?"
slug: methodes-et-blocs
sidebar_position: 7
description: "Ce chapitre présente les **méthodes** (des morceaux de code nommés et réutilisables) et les **blocs** (des morceaux de code qu'on passe à une méthode). C'est un chapitre fondamental : à partir de maintenant, on peut structurer son code au lieu de tout écrire dans un seul script."
description: "Ce chapitre présente les méthodes (des morceaux de code nommés et réutilisables) et les blocs (des morceaux de code qu'on passe à une méthode). C'est un chapitre fondamental : à partir de maintenant, on peut structurer son code au lieu de tout écrire dans un seul script."
---

Ce chapitre présente les **méthodes** (des morceaux de code nommés et réutilisables) et les **blocs** (des morceaux de code qu'on passe à une méthode). C'est un chapitre fondamental : à partir de maintenant, on peut structurer son code au lieu de tout écrire dans un seul script.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment créer des classes et des objets en Ruby ?"
slug: classes-et-objets
sidebar_position: 8
description: "Ce chapitre introduit les **classes**, le mécanisme central pour organiser le code en Ruby. Une classe regroupe des données et des comportements dans un seul endroit."
description: "Ce chapitre introduit les classes, le mécanisme central pour organiser le code en Ruby. Une classe regroupe des données et des comportements dans un seul endroit."
---

Ce chapitre introduit les **classes**, le mécanisme central pour organiser le code en Ruby. Une classe regroupe des données et des comportements dans un seul endroit.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser l'héritage en Ruby ?"
slug: heritage
sidebar_position: 9
description: "Ce chapitre présente l'**héritage**, le mécanisme qui permet à une classe de reprendre tout ce qu'une autre classe définit et d'y ajouter ses propres spécificités."
description: "Ce chapitre présente l'héritage, le mécanisme qui permet à une classe de reprendre tout ce qu'une autre classe définit et d'y ajouter ses propres spécificités."
---

Ce chapitre présente l'**héritage**, le mécanisme qui permet à une classe de reprendre tout ce qu'une autre classe définit et d'y ajouter ses propres spécificités.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser les modules en Ruby ?"
slug: modules
sidebar_position: 10
description: "Ce chapitre présente les **modules**, un outil pour organiser le code et partager du comportement entre classes. Les modules sont le complément naturel des classes et de l'héritage."
description: "Ce chapitre présente les modules, un outil pour organiser le code et partager du comportement entre classes. Les modules sont le complément naturel des classes et de l'héritage."
---

Ce chapitre présente les **modules**, un outil pour organiser le code et partager du comportement entre classes. Les modules sont le complément naturel des classes et de l'héritage.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment étendre du code existant avec prepend en Ruby ?"
slug: etendre-du-code-avec-prepend
sidebar_position: 11
description: "Ce chapitre présente les techniques pour **étendre du code existant** sans le modifier directement. C'est un concept fondamental en Ruby : on peut enrichir une classe après sa création, même si on n'a pas accès au fichier source."
description: "Ce chapitre présente les techniques pour étendre du code existant sans le modifier directement. C'est un concept fondamental en Ruby : on peut enrichir une classe après sa création, même si on n'a pas accès au fichier source."
---

Ce chapitre présente les techniques pour **étendre du code existant** sans le modifier directement. C'est un concept fondamental en Ruby : on peut enrichir une classe après sa création, même si on n'a pas accès au fichier source.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment utiliser Enumerable en Ruby ?"
slug: enumerable
sidebar_position: 12
description: "Ce chapitre présente **Enumerable**, un module qui donne plus de 50 méthodes de manipulation de collections. On découvre aussi **Comparable**, qui permet de comparer des objets entre eux."
description: "Ce chapitre présente Enumerable, un module qui donne plus de 50 méthodes de manipulation de collections. On découvre aussi Comparable, qui permet de comparer des objets entre eux."
---

Ce chapitre présente **Enumerable**, un module qui donne plus de 50 méthodes de manipulation de collections. On découvre aussi **Comparable**, qui permet de comparer des objets entre eux.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment gérer les erreurs en Ruby ?"
slug: gestion-des-erreurs
sidebar_position: 14
description: "Ce chapitre présente la **gestion des exceptions**, le mécanisme qui permet de réagir quand quelque chose tourne mal dans un programme. Au lieu de crash silencieux ou de valeurs `nil` inexpliquées, on apprend à lever, capturer et traiter les erreurs proprement."
description: "Ce chapitre présente la gestion des exceptions, le mécanisme qui permet de réagir quand quelque chose tourne mal dans un programme. Au lieu de crash silencieux ou de valeurs nil inexpliquées, on apprend à lever, capturer et traiter les erreurs proprement."
---

Ce chapitre présente la **gestion des exceptions**, le mécanisme qui permet de réagir quand quelque chose tourne mal dans un programme. Au lieu de crash silencieux ou de valeurs `nil` inexpliquées, on apprend à lever, capturer et traiter les erreurs proprement.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Comment lire et écrire des fichiers en Ruby ?"
slug: lire-et-ecrire-des-fichiers
sidebar_position: 15
description: "Ce chapitre présente la lecture et l'écriture de fichiers, puis la **sérialisation** : transformer des objets Ruby en données qu'on peut sauvegarder et recharger plus tard."
description: "Ce chapitre présente la lecture et l'écriture de fichiers, puis la sérialisation : transformer des objets Ruby en données qu'on peut sauvegarder et recharger plus tard."
---

Ce chapitre présente la lecture et l'écriture de fichiers, puis la **sérialisation** : transformer des objets Ruby en données qu'on peut sauvegarder et recharger plus tard.
Expand Down
Loading