From f069173edb48cca8b633ed05f1bbdff4c26903ba Mon Sep 17 00:00:00 2001 From: camperbot Date: Thu, 7 Oct 2021 05:37:51 -0700 Subject: [PATCH] chore(i18n,docs): processed translations (#43758) --- .../i18n/chinese/curriculum-file-structure.md | 7 ++- .../how-to-catch-outgoing-emails-locally.md | 16 +++-- .../how-to-help-with-video-challenges.md | 19 +++--- .../chinese/how-to-open-a-pull-request.md | 34 +++++------ .../how-to-test-translations-locally.md | 2 +- .../how-to-use-docker-on-windows-home.md | 2 +- .../how-to-work-on-coding-challenges.md | 2 +- .../chinese/how-to-work-on-the-news-theme.md | 1 + ...-to-work-on-tutorials-that-use-coderoad.md | 12 ++++ .../i18n/espanol/curriculum-file-structure.md | 7 ++- .../how-to-catch-outgoing-emails-locally.md | 58 +++++++++++-------- .../how-to-help-with-video-challenges.md | 29 +++++----- .../espanol/how-to-open-a-pull-request.md | 34 +++++------ .../how-to-test-translations-locally.md | 2 +- .../how-to-use-docker-on-windows-home.md | 2 +- .../how-to-work-on-coding-challenges.md | 2 +- .../espanol/how-to-work-on-the-news-theme.md | 1 + ...-to-work-on-tutorials-that-use-coderoad.md | 12 ++++ .../i18n/italian/curriculum-file-structure.md | 7 ++- .../how-to-catch-outgoing-emails-locally.md | 52 ++++++++++------- .../how-to-help-with-video-challenges.md | 29 +++++----- .../italian/how-to-open-a-pull-request.md | 34 +++++------ .../how-to-test-translations-locally.md | 2 +- .../how-to-use-docker-on-windows-home.md | 2 +- .../how-to-work-on-coding-challenges.md | 2 +- .../italian/how-to-work-on-the-news-theme.md | 1 + ...-to-work-on-tutorials-that-use-coderoad.md | 12 ++++ .../japanese/curriculum-file-structure.md | 7 ++- .../how-to-catch-outgoing-emails-locally.md | 16 +++-- .../how-to-help-with-video-challenges.md | 19 +++--- .../japanese/how-to-open-a-pull-request.md | 34 +++++------ .../how-to-test-translations-locally.md | 2 +- .../how-to-use-docker-on-windows-home.md | 2 +- .../how-to-work-on-coding-challenges.md | 2 +- .../japanese/how-to-work-on-the-news-theme.md | 1 + ...-to-work-on-tutorials-that-use-coderoad.md | 12 ++++ docs/i18n/portuguese/_sidebar.md | 4 +- .../portuguese/curriculum-file-structure.md | 7 ++- .../how-to-catch-outgoing-emails-locally.md | 58 +++++++++++-------- .../how-to-help-with-video-challenges.md | 29 +++++----- .../portuguese/how-to-open-a-pull-request.md | 34 +++++------ .../how-to-test-translations-locally.md | 2 +- .../how-to-use-docker-on-windows-home.md | 2 +- .../how-to-work-on-coding-challenges.md | 2 +- .../how-to-work-on-the-news-theme.md | 1 + ...-to-work-on-tutorials-that-use-coderoad.md | 12 ++++ 46 files changed, 372 insertions(+), 257 deletions(-) diff --git a/docs/i18n/chinese/curriculum-file-structure.md b/docs/i18n/chinese/curriculum-file-structure.md index 9efbc99c2e..946eb7dd5f 100644 --- a/docs/i18n/chinese/curriculum-file-structure.md +++ b/docs/i18n/chinese/curriculum-file-structure.md @@ -15,6 +15,7 @@ There are a few terms we use when discussing our curriculum content. Using those terms, here is how the file structure would be defined: + ```md curriculum/ @@ -62,7 +63,7 @@ When renaming a certification, you will likely want to rename the associated sup Also, you will likely want to rename the certificate and the `{superBlock}-projects` block when you rename a superBlock since they all shares a name. To rename only a superBlock you need to: 1. Rename the superBlock folder in the `curriculum/challenges/english` directory. -1. Rename the superBlock folder in *all* other `curriculum/challenges/{language}` directories. +1. Rename the superBlock folder in _all_ other `curriculum/challenges/{language}` directories. 1. For each block within that superBlock, update the `superBlock` value in the `meta.json` file to its dashedName. You don't need to rename any folders here. Do that when renaming a block. 1. Rename the superblock folder in `client/src/pages/learn`. 1. Update the `index.md` file in the above folder, changing the `title` and `superBlock` values to the new name. @@ -79,7 +80,7 @@ Also, you will likely want to rename the certificate and the `{superBlock}-proje When renaming a curriculum block, you need to: 1. Change the name of the block folder in the `curriculum/challenges/english/{superBlock}` directory. -1. Change the name of the same block folder in *all* of the other language directories to match. These must all be the same as the English structure or the build will error out. +1. Change the name of the same block folder in _all_ of the other language directories to match. These must all be the same as the English structure or the build will error out. 1. Change the name of the block folder in the `_meta` directory. 1. Update the `name` and `dashedName` property for that block's `meta.json` file. 1. Update the `client/utils/help-category-map.json` to use the new block name as the key. @@ -94,7 +95,7 @@ When renaming a single challenge file, you need to: 1. Change the name of the challenge file in the `curriculum/challenges/english` directory. 1. Change the name of the `title` and `dashedName` within that file. -1. Change the name of the file, and the `dashedName` in those files for *all* of the other language directories to match. +1. Change the name of the file, and the `dashedName` in those files for _all_ of the other language directories to match. 1. Update the name of the challenge in the relevant `meta.json` file. The challenge names here are not used in the build, but provide a user-friendly way to identify the challenge order. 1. If the challenge is a certificate project, update the YAML file in `curriculum/english/12-certificates/` to the new name. 1. If the challenge is a certificate project, update the `title` and `link` in `client/src/resources/cert-and-project-map.ts` diff --git a/docs/i18n/chinese/how-to-catch-outgoing-emails-locally.md b/docs/i18n/chinese/how-to-catch-outgoing-emails-locally.md index 38927b31da..a1324042b8 100644 --- a/docs/i18n/chinese/how-to-catch-outgoing-emails-locally.md +++ b/docs/i18n/chinese/how-to-catch-outgoing-emails-locally.md @@ -29,7 +29,9 @@ docker stop mailhog to stop it. -When the installation completes, you can start [using MailHog](#using-mailhog). +When the installation completes, you can start [using MailHog](#using-mailhog). + +
Installing MailHog on macOS @@ -42,7 +44,9 @@ brew services start mailhog The above commands will start a mailhog service in the background. -When the installation completes, you can start [using MailHog](#using-mailhog).
+When the installation completes, you can start [using MailHog](#using-mailhog). + +
Installing MailHog on Windows @@ -52,7 +56,9 @@ When the download completes, click to open the file. A Windows firewall notifica Close MailHog by closing the command prompt window. To start MailHog again, click on the MailHog executable (.exe) file that was downloaded initially - it is not necessary to download a new MailHog installation file. -Start [using MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + +
Installing MailHog on Linux @@ -92,7 +98,9 @@ sudo cp /home/$(whoami)/go/bin/MailHog /usr/local/bin/mailhog mailhog ``` -Start [using MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + + ## Using MailHog diff --git a/docs/i18n/chinese/how-to-help-with-video-challenges.md b/docs/i18n/chinese/how-to-help-with-video-challenges.md index 387d43f2b3..e8b769db1f 100644 --- a/docs/i18n/chinese/how-to-help-with-video-challenges.md +++ b/docs/i18n/chinese/how-to-help-with-video-challenges.md @@ -8,7 +8,6 @@ The video challenge pages are created by members of the freeCodeCamp team. YouTu You can help by creating multiple-choice questions related to video sections and adding the questions to the markdown files for the video challenges. - ## Challenge Template Below is a template of what the challenge markdown files look like. @@ -27,9 +26,7 @@ forumTopicId: 12345 Challenge description text, in markdown ```html -
- example code -
+
example code
```` # --question-- @@ -55,7 +52,6 @@ More answers ## --video-solution-- The number for the correct answer goes here. - ```` ## Creating questions for video challenges @@ -76,6 +72,7 @@ Pick a challenge markdown file from the options above. First, find the videoId. For example, in the following code from the header of a video challenge markdown file, the videoId is "nVAaxZ34khk". On GitHub, the information should be laid out in a table format. + ```` --- id: 5e9a093a74c4063ca6f7c14d title: Data Analysis Example A challengeType: 11 @@ -84,7 +81,7 @@ videoId: nVAaxZ34khk ``` Next, access the YouTube video with that `videoId`. The URL for the video will be: -https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) +https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) In the example above, the URL is https://www.youtube.com/watch?v=nVAaxZ34khk @@ -120,12 +117,14 @@ More answers 1 ``` -Add/Update the question text under the part that shows: +Add/Update the question text under the part that shows: + ``` # --question-- ## --text-- ``` + Add/Update answers (`Answer 1`, `Answer 2`, and so on) under `## --answers--`. Make sure to update the number under `## --video-solution--` with the correct answer number. You can add more possible answers using the same format. The question and answers can be surrounded with quotation marks. ### Question examples @@ -134,14 +133,16 @@ Add/Update answers (`Answer 1`, `Answer 2`, and so on) under `## --answers--`. M # --question-- ## --text-- + What does this JavaScript code log to the console? + ```js console.log('hello world'); ```` ## --answers-- -hello *world* +hello _world_ --- @@ -154,11 +155,11 @@ hello world --- ## --video-solution-- + 3 ```` ````md - # --question-- ## --text-- diff --git a/docs/i18n/chinese/how-to-open-a-pull-request.md b/docs/i18n/chinese/how-to-open-a-pull-request.md index 681b1811fe..bb2a3353a0 100644 --- a/docs/i18n/chinese/how-to-open-a-pull-request.md +++ b/docs/i18n/chinese/how-to-open-a-pull-request.md @@ -132,37 +132,37 @@ When you are working on features for our upcoming curriculum `next-*` branches, a. Either delete your local branch after taking a backup (if you still have it locally): - ```console - git checkout + ```console + git checkout - # example: - # git checkout feat/add-numpy-video-question + # example: + # git checkout feat/add-numpy-video-question - git checkout -b + git checkout -b - # example: - # git checkout -b backup-feat/add-numpy-video-question + # example: + # git checkout -b backup-feat/add-numpy-video-question - git branch -D - ``` + git branch -D + ``` b. Or just a backup of your pr branch (if you do not have it locally): - ```console - git checkout -b origin/ + ```console + git checkout -b origin/ - # example: - # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question - ``` + # example: + # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question + ``` -4. Start off with a clean slate: +3. Start off with a clean slate: ```console git checkout -b next-python-projects git cherry-pick ``` -5. Resolve any conflicts, and cleanup, install run tests +4. Resolve any conflicts, and cleanup, install run tests ```console npm run clean @@ -176,7 +176,7 @@ When you are working on features for our upcoming curriculum `next-*` branches, ``` -6. If everything looks good push back to the PR +5. If everything looks good push back to the PR ```console git push --force origin diff --git a/docs/i18n/chinese/how-to-test-translations-locally.md b/docs/i18n/chinese/how-to-test-translations-locally.md index e3ad9d37d1..c0ff23e4c1 100644 --- a/docs/i18n/chinese/how-to-test-translations-locally.md +++ b/docs/i18n/chinese/how-to-test-translations-locally.md @@ -143,7 +143,7 @@ For the video challenges, you need to change a few things. First add the new loc ... ``` -Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: +Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: ```yml videoLocaleIds: diff --git a/docs/i18n/chinese/how-to-use-docker-on-windows-home.md b/docs/i18n/chinese/how-to-use-docker-on-windows-home.md index d336c2b94d..f67572d27c 100644 --- a/docs/i18n/chinese/how-to-use-docker-on-windows-home.md +++ b/docs/i18n/chinese/how-to-use-docker-on-windows-home.md @@ -12,4 +12,4 @@ If you see messages like bash: change_volumes_owner.sh: No such file or directory ``` -when you `npm run docker:init` this is likely the culprit. \ No newline at end of file +when you `npm run docker:init` this is likely the culprit. diff --git a/docs/i18n/chinese/how-to-work-on-coding-challenges.md b/docs/i18n/chinese/how-to-work-on-coding-challenges.md index f671bb00a6..af2cc43bef 100644 --- a/docs/i18n/chinese/how-to-work-on-coding-challenges.md +++ b/docs/i18n/chinese/how-to-work-on-coding-challenges.md @@ -287,7 +287,7 @@ Challenges should have the minimum number of tests necessary to verify that a ca Our goal is to communicate the single point that the challenge is trying to teach, and test that they have understood that point. -Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. +Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. ## Formatting seed code diff --git a/docs/i18n/chinese/how-to-work-on-the-news-theme.md b/docs/i18n/chinese/how-to-work-on-the-news-theme.md index 59f1f2360e..bf899521ee 100644 --- a/docs/i18n/chinese/how-to-work-on-the-news-theme.md +++ b/docs/i18n/chinese/how-to-work-on-the-news-theme.md @@ -84,6 +84,7 @@ One really neat trick is that you can also create custom one-off templates just ```sh npm run zip ``` + ## Other Reference and resources ### PostCSS Features Used diff --git a/docs/i18n/chinese/how-to-work-on-tutorials-that-use-coderoad.md b/docs/i18n/chinese/how-to-work-on-tutorials-that-use-coderoad.md index bfc97bd62d..6a0c42d0df 100644 --- a/docs/i18n/chinese/how-to-work-on-tutorials-that-use-coderoad.md +++ b/docs/i18n/chinese/how-to-work-on-tutorials-that-use-coderoad.md @@ -1,6 +1,7 @@ This page describes how to contribute to the freeCodeCamp tutorials and projects that are completed using the CodeRoad VS Code extension. ## How the tutorials work + The freeCodeCamp tutorials that use CodeRoad each have their own repo under the freeCodeCamp GitHub organization. They all start with `learn-`. For example, `https://github.com/freeCodeCamp/learn-bash-by-building-a-boilerplate/`. Each tutorial repo has a `main` branch and a "version" branch, e.g. `v1.0.0`. @@ -20,11 +21,13 @@ In order to make changes to commits on a version branch, you would need to rebas ## How to contribute ### Prerequisites + Install the [CodeRoad CLI tools](https://www.npmjs.com/package/@coderoad/cli) with `npm install -g @coderoad/cli`. There have been some issues with the latest version. If `coderoad --version` doesn't work after installing, downgrade to `0.7.0` with `npm install -g @coderoad/cli@0.7.0`. ### Working on `main` + This set of instructions is for PRs that only make minor changes on `main` to **existing lessons**. That mainly consists of typo, grammar, hint, and instructional changes or fixes in the `TUTORIAL.md` file. For everything else, including adding or deleting lessons, follow the [working on a version branch instructions](#working-on-version-branch). You will not need to create a new version branch for this - you can create a PR following the instructions below. @@ -47,12 +50,14 @@ Follow these instructions to make a PR, keeping in mind that instructions usuall - Make a PR ### Testing changes on `main` + If you want to test your changes to `main` after using the above instructions, follow these instructions: - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on the new branch ### Reviewing PR's to `main` + If reviewing a PR that only changes `main` with instructional or grammar issues as described above, the changes in `TUTORIAL.md` should match the changes in `tutorial.json`. The `tutorial.json` file should not have changes to commit hashes, or step/level ids. Startup or level commands or file watchers likely should not be changed either. There are exceptions if there's an issue with a step, but they should be treated with more caution. @@ -60,6 +65,7 @@ The `tutorial.json` file should not have changes to commit hashes, or step/level Also, keep in mind that instructions usually use the lessons around them for context, so make sure they make sense. ### Working on version branch + > [!WARNING] > > Reminder: Never make or push changes to a version branch that is on one of the freeCodeCamp repos. Always create a new one @@ -86,10 +92,12 @@ Follow these instructions to create a new version: - Leave it here for reviewers ### Testing changes to a version branch + - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on whatever fork the changes are on. Make sure to use the file on the `feat: version-X.X.Y` branch and not the `main` branch ### Pushing a new version + Before pushing a new version, view the new `feat/version-vX.X.Y` (will be merged to `main`) branch on the user's fork. Make sure there are additions to the `CHANGELOG.md` file that include the new changes, and the version in the two spots of `coderoad.yaml` matches the new version branch. If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` and `coderoad.yaml` files, have tested the changes using the instructions above, and want to push a new version of a tutorial: @@ -114,13 +122,17 @@ If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` - Finally, if any PRs for this version exists, close them ### How to revert to a previous version + - Create a new branch off the latest `main` with `git checkout -b revert/to-version-X.X.X` - Revert all commits on this branch up to and including the commit of the version after the one you want to revert to. For example, you may have commits that look like this: + ``` fix: typo release: version 1.0.1 fix: typo release: version 1.0.0 ``` + If you want to revert to v1.0.0, revert all the commits from `release: version 1.0.1` and after + - Create a PR. Give it a title of `revert: to version X.X.X` diff --git a/docs/i18n/espanol/curriculum-file-structure.md b/docs/i18n/espanol/curriculum-file-structure.md index ef9b9c6106..ec74109db6 100644 --- a/docs/i18n/espanol/curriculum-file-structure.md +++ b/docs/i18n/espanol/curriculum-file-structure.md @@ -15,6 +15,7 @@ Hay algunos términos que utilizamos cuando hablamos del contenido de nuestro cu Usando esos términos, así es como se definiría la estructura de archivos: + ```md curriculum/ @@ -62,7 +63,7 @@ Al renombrar una certificación, es probable que desees renombrar el súper bloq Además, es probable que desees renombrar el certificado y el bloque `{superBlock}-projects` cuando renombres un súper bloque, ya que todos comparten un nombre. Para renombrar solamente un súper bloque necesitas: 1. Renombrar la carpeta del super bloque en el directorio `curriculum/challenges/english`. -1. Renombra la carpeta del súper bloque en *todos* los demás directorios `curriculum/challenges/{language}`. +1. Rename the superBlock folder in _all_ other `curriculum/challenges/{language}` directories. 1. Para cada bloque dentro del súper bloque, actualice el valor `superBlock` en el archivo `meta.json` a su nombre con guiones. No necesitas renombrar ninguna carpeta aquí. Hazlo cuando renombres un bloque. 1. Renombra la carpeta súper bloque en `client/src/pages/learn`. 1. Actualiza el archivo `index.md` en la carpeta superior, cambiado los valores de `title` y `superBlock` al nuevo nombre. @@ -79,7 +80,7 @@ Además, es probable que desees renombrar el certificado y el bloque `{superBlo Cuando renombras un bloque del currículo, tienes que: 1. Cambiar el nombre de la carpeta del bloque en el directorio `curriculum/challenges/english/{superBlock}`. -1. Cambiar el nombre de la misma carpeta de bloque en *todos* los directorios de los demás idiomas para que coincidan. Estos deben ser todos iguales a la estructura en inglés o se producirá un error en la compilación. +1. Change the name of the same block folder in _all_ of the other language directories to match. Estos deben ser todos iguales a la estructura en inglés o se producirá un error en la compilación. 1. Cambiar el nombre de la carpeta del bloque en el directorio `_meta`. 1. Actualizar las propiedades `nombre` y `dashedName` (nombre con guiones) del archivo `meta.json` de ese bloque. 1. Actualizar el `client/utils/help-category-map.json` para que utilice el nuevo nombre de bloque como clave. @@ -94,7 +95,7 @@ Al renombras un solo archivo de desafío, tienes que: 1. Cambiar el nombre del archivo del desafío en el directorio `curriculum/challenges/english`. 1. Cambiar el nombre del `title` y de `dashedName` (nombre con guiones) dentro de ese archivo. -1. Cambiar el nombre del archivo y el `dashedName` (nombre con guiones) en esos archivos para que *todos* los directorios de los otros idiomas coincidan. +1. Change the name of the file, and the `dashedName` in those files for _all_ of the other language directories to match. 1. Actualizar el nombre del desafío en el archivo `meta.json` correspondiente. Los nombres de los desafíos aquí no se utilizan en la compilación, pero proveen una forma amigable al usuario de identificar el orden de los mismos. 1. Si el desafío es un proyecto de certificado, actualizar el archivo YAML en `curriculum/english/12-certificates/` con el nuevo nombre. 1. Si el desafío es un proyecto de certificado, actualizar el `title` y el `link` en `client/src/resources/cert-and-project-map.ts` diff --git a/docs/i18n/espanol/how-to-catch-outgoing-emails-locally.md b/docs/i18n/espanol/how-to-catch-outgoing-emails-locally.md index 39e18adc95..0e1a7390ed 100644 --- a/docs/i18n/espanol/how-to-catch-outgoing-emails-locally.md +++ b/docs/i18n/espanol/how-to-catch-outgoing-emails-locally.md @@ -29,54 +29,60 @@ docker stop mailhog Para frenarlo. -Cuando la instalación finalice, puedes comenzar a [usar MailHog](#using-mailhog). +Cuando la instalación finalice, puedes comenzar a [usar MailHog](#using-mailhog). -
Instalando MailHog en macOS +
-Instala Mailhog en MacOS con [Homebrew](https://brew.sh/): +
Installing MailHog on macOS + +Install MailHog on macOS with [Homebrew](https://brew.sh/): ```bash brew install mailhog brew services start mailhog ``` -los comandos anteriores iniciarán un servicio de mailhog en segundo plano. +The above commands will start a mailhog service in the background. -cuando termine la instalación, puedes comenzar a [usar Mailhog](#using-mailhog).
+When the installation completes, you can start [using MailHog](#using-mailhog). -
Instalando MailHog en Windows +
-Descarga la última versión de MailHog desde [el repositorio oficial de MailHog](https://github.com/mailhog/MailHog/releases). Ubica y presiona el enlace para tu versión de Windows (32 o 64 bits) y se descargará un archivo .exe a tu computadora. +
Installing MailHog on Windows -Cuando haya finalizado la descarga, haz clic para abrir el archivo. Una notificación del cortafuegos de Windows podría aparecer, solicitando permiso de acceso para MailHog. Se abrirá una consola de Windows donde MailHog se ejecutará una vez que se le conceda acceso del cortafuegos. +Download the latest version of MailHog from [MailHog's official repository](https://github.com/mailhog/MailHog/releases). Locate and click on the link for your Windows version (32 or 64 bit) and a .exe file will be downloaded to your computer. -Detén MailHog cerrando la ventana de la consola. Para iniciar MailHog de nuevo, haz clic en el archivo ejecutable de MailHog (.exe) que se descargó inicialmente, no es necesario descargar un nuevo archivo de instalación de MailHog. +When the download completes, click to open the file. A Windows firewall notification may appear, requesting access permission for MailHog. A standard Windows command line prompt will open where MailHog will be running once firewall access is granted. -Comienza a [usar MailHog](#using-mailhog).
+Close MailHog by closing the command prompt window. To start MailHog again, click on the MailHog executable (.exe) file that was downloaded initially - it is not necessary to download a new MailHog installation file. -
Instalando MailHog en Linux +Start [using MailHog](#using-mailhog). -Primero, instala [Go](https://golang.org). +
-Ejecuta los siguientes comandos para instalar GO en sistemas basados en Debian como Ubuntu y Linux Mint. +
Installing MailHog on Linux + +First, install [Go](https://golang.org). + +Run the following commands to install GO on Debian-based systems like Ubuntu and Linux Mint. ```bash sudo apt-get install golang ``` -Ejecuta los siguientes comandos para instalar GO en sistemas basados en RPM como CentOS, Fedora, Red Hat Linux, etc. +Run the following commands to install GO on RPM-based systems like CentOS, Fedora, Red Hat Linux, etc. ```bash sudo dnf install golang ``` -Alternativamente, ejecuta los siguientes comandos para instalar GO. +Alternatively, run the following commands to install GO. ```bash sudo yum install golang ``` -Ahora establece la ruta para Go con los siguientes comandos. +Now set the path for Go with the following commands. ```bash echo "export GOPATH=$HOME/go" >> ~/.profile @@ -84,7 +90,7 @@ echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.profile source ~/.profile ``` -Finalmente, introduce los siguientes comandos para instalar y ejecutar MailHog. +Finally, enter the commands below to install and run MailHog. ```bash go get github.com/mailhog/MailHog @@ -92,23 +98,25 @@ sudo cp /home/$(whoami)/go/bin/MailHog /usr/local/bin/mailhog mailhog ``` -Comienza a [usar MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + + ## Usando MailHog -Abre una nueva pestaña o ventana del navegador y navega a [http://localhost:8025](http://localhost:8025) para abrir tu bandeja de entrada de MailHog cuando se haya completado la instalación de MailHog y se encuentre en ejecución. La bandeja de entrada será similar a la captura de pantalla siguiente. +Open a new browser tab or window and navigate to [http://localhost:8025](http://localhost:8025) to open your MailHog inbox when the MailHog installation has completed and MailHog is running. The inbox will appear similar to the screenshot below. -![Captura de pantalla de MailHog 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg) +![MailHog Screenshot 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg) -Los correos enviados por tu instalación de freeCodeCamp aparecerán de la siguiente manera +Emails sent by your freeCodeCamp installation will appear as below -![Captura de pantalla de MailHog 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg) +![MailHog Screenshot 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg) -Dos pestañas que te permiten ver texto plano o contenido fuente estarán disponibles cuando abras un correo electrónico dado. Asegúrate de que la pestaña de texto plano está seleccionada como se muestra a continuación. +Two tabs that allow you to view either plain text or source content will be available when you open a given email. Ensure that the plain text tab is selected as below. -![Captura de pantalla de MailHog 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg) +![MailHog Screenshot 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg) -Todos los enlaces en el correo electrónico deben ser cliqueables y enlazar a su URL. +All links in the email should be clickable and resolve to their URL. ## Enlaces útiles diff --git a/docs/i18n/espanol/how-to-help-with-video-challenges.md b/docs/i18n/espanol/how-to-help-with-video-challenges.md index f9b385a83f..b0553585c3 100644 --- a/docs/i18n/espanol/how-to-help-with-video-challenges.md +++ b/docs/i18n/espanol/how-to-help-with-video-challenges.md @@ -8,7 +8,6 @@ Las páginas de desafío de vídeo son creadas por miembros del equipo freeCodeC Puedes ayudar creando preguntas de selección múltiple relacionadas con las secciones de video y agregando las preguntas a los archivos markdown para los desafíos de video. - ## Plantilla de desafío A continuación se muestra una plantilla de cómo se ven los archivos markdown de los desafíos. @@ -27,9 +26,7 @@ forumTopicId: 12345 Challenge description text, in markdown ```html -
- example code -
+
example code
```` # --question-- @@ -55,7 +52,6 @@ Más respuestas ## --video-solution-- El número para la respuesta correcta va aquí. - ```` ## Creando preguntas para los desafíos de video @@ -76,6 +72,7 @@ Elige un archivo markdown de las opciones anteriores. Primero, encuentra la videoId (id del vídeo). Por ejemplo, en el siguiente código de la cabecera de un archivo markdown de desafío de video, el videoId es "nVAaxZ34khk". En GitHub, la información debe ser colocada en un formato de tabla. + ```` --- id: 5e9a093a74c4063ca6f7c14d title: Data Analysis Example A challengeType: 11 @@ -83,12 +80,12 @@ videoId: nVAaxZ34khk --- ``` -A continuación, accede al vídeo de YouTube con esa `videoId`. La URL del video será: -https://www.youtube. om/watch?v=[videoId] (reemplaza `videoId` en la URL con la ID del video sin los corchetes) +A continuación, accede al vídeo de YouTube con esa `videoId`. The URL for the video will be: +https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) -En el ejemplo anterior, la URL es https://www.youtube.com/watch?v=nVAaxZ34khk +In the example above, the URL is https://www.youtube.com/watch?v=nVAaxZ34khk -Dale un vistazo al video de YouTube con ese videoId y piensa en una pregunta de selección múltiple basada en el contenido del video. +Skim the YouTube video with that videoId and think of a multiple-choice question based on the content of the video. ### Añade la pregunta al archivo markdown @@ -120,12 +117,14 @@ More answers 1 ``` -Añade/Actualiza el texto de la pregunta debajo de la parte que muestra: +Add/Update the question text under the part that shows: + ``` # --question-- ## --text-- ``` + Añade/Actualiza las respuestas (`Answer 1`, `Answer 2`, y así) debajo de `## --answers--`. Asegúrate de actualizar el número debajo de ` ## --video-solution-- ` con el número de respuesta correcto. Puede añadir más respuestas posibles usando el mismo formato. La pregunta y las respuestas pueden estar rodeadas de comillas. ### Ejemplos de preguntas @@ -134,14 +133,16 @@ Añade/Actualiza las respuestas (`Answer 1`, `Answer 2`, y así) debajo de `## - # --question-- ## --text-- -¿Qué imprime este código de JavaScript en la consola? + +What does this JavaScript code log to the console? + ```js console.log('hello world'); ```` ## --answers-- -hola *mundo* +hello _world_ --- @@ -154,16 +155,16 @@ hola mundo --- ## --video-solution-- + 3 ```` ````md - # --question-- ## --text-- -¿Qué se imprimirá después de ejecutar este código?: +What will print out after running this code: ```py width = 15 diff --git a/docs/i18n/espanol/how-to-open-a-pull-request.md b/docs/i18n/espanol/how-to-open-a-pull-request.md index 0abbe9fbe8..4261cffe5f 100644 --- a/docs/i18n/espanol/how-to-open-a-pull-request.md +++ b/docs/i18n/espanol/how-to-open-a-pull-request.md @@ -132,37 +132,37 @@ Cuando estás trabajando en características para nuestras próximas ramas del p a. Borra tu rama local después de realizar una copia de seguridad (si todavía la tienes localmente): - ```console - git checkout + ```console + git checkout - # ejemplo: - # git checkout feat/add-numpy-video-question + # example: + # git checkout feat/add-numpy-video-question - git checkout -b + git checkout -b - # ejemplo: - # git checkout -b backup-feat/add-numpy-video-question + # example: + # git checkout -b backup-feat/add-numpy-video-question - git branch -D - ``` + git branch -D + ``` b. O simplemente una copia de seguridad de su rama pr (si no la tiene localmente): - ```console - git checkout -b origin/ + ```console + git checkout -b origin/ - # ejemplo: - # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question - ``` + # example: + # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question + ``` -4. Empezar con una pizarra limpia: +3. Empezar con una pizarra limpia: ```console git checkout -b next-python-projects git cherry-pick ``` -5. Resuelve cualquier conflicto y limpia, instala pruebas de ejecución +4. Resuelve cualquier conflicto y limpia, instala pruebas de ejecución ```console npm run clean @@ -176,7 +176,7 @@ Cuando estás trabajando en características para nuestras próximas ramas del p ``` -6. Si todo se ve bien empuje hacia el PR +5. Si todo se ve bien empuje hacia el PR ```console git push --force origin diff --git a/docs/i18n/espanol/how-to-test-translations-locally.md b/docs/i18n/espanol/how-to-test-translations-locally.md index ab32d0e237..17be9cbdf6 100644 --- a/docs/i18n/espanol/how-to-test-translations-locally.md +++ b/docs/i18n/espanol/how-to-test-translations-locally.md @@ -143,7 +143,7 @@ For the video challenges, you need to change a few things. First add the new loc ... ``` -Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: +Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: ```yml videoLocaleIds: diff --git a/docs/i18n/espanol/how-to-use-docker-on-windows-home.md b/docs/i18n/espanol/how-to-use-docker-on-windows-home.md index ba7ca1af29..8f095cf253 100644 --- a/docs/i18n/espanol/how-to-use-docker-on-windows-home.md +++ b/docs/i18n/espanol/how-to-use-docker-on-windows-home.md @@ -12,4 +12,4 @@ Si ves mensajes como bash: change_volumes_owner.sh: No such file or directory ``` -al ejecutar `npm run docker:init` es probable que esto sea el culpable. \ No newline at end of file +al ejecutar `npm run docker:init` es probable que esto sea el culpable. diff --git a/docs/i18n/espanol/how-to-work-on-coding-challenges.md b/docs/i18n/espanol/how-to-work-on-coding-challenges.md index fc6e430b35..a2d3c91960 100644 --- a/docs/i18n/espanol/how-to-work-on-coding-challenges.md +++ b/docs/i18n/espanol/how-to-work-on-coding-challenges.md @@ -287,7 +287,7 @@ Challenges should have the minimum number of tests necessary to verify that a ca Our goal is to communicate the single point that the challenge is trying to teach, and test that they have understood that point. -Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. +Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. ## Formatting seed code diff --git a/docs/i18n/espanol/how-to-work-on-the-news-theme.md b/docs/i18n/espanol/how-to-work-on-the-news-theme.md index 88faf5852f..2a956656c6 100644 --- a/docs/i18n/espanol/how-to-work-on-the-news-theme.md +++ b/docs/i18n/espanol/how-to-work-on-the-news-theme.md @@ -84,6 +84,7 @@ Un truco realmente bueno es que también puede crear plantillas personalizadas s ```sh npm run zip ``` + ## Otros recursos y referencias ### Funcionalidades utilizadas de PostCSS diff --git a/docs/i18n/espanol/how-to-work-on-tutorials-that-use-coderoad.md b/docs/i18n/espanol/how-to-work-on-tutorials-that-use-coderoad.md index bfc97bd62d..6a0c42d0df 100644 --- a/docs/i18n/espanol/how-to-work-on-tutorials-that-use-coderoad.md +++ b/docs/i18n/espanol/how-to-work-on-tutorials-that-use-coderoad.md @@ -1,6 +1,7 @@ This page describes how to contribute to the freeCodeCamp tutorials and projects that are completed using the CodeRoad VS Code extension. ## How the tutorials work + The freeCodeCamp tutorials that use CodeRoad each have their own repo under the freeCodeCamp GitHub organization. They all start with `learn-`. For example, `https://github.com/freeCodeCamp/learn-bash-by-building-a-boilerplate/`. Each tutorial repo has a `main` branch and a "version" branch, e.g. `v1.0.0`. @@ -20,11 +21,13 @@ In order to make changes to commits on a version branch, you would need to rebas ## How to contribute ### Prerequisites + Install the [CodeRoad CLI tools](https://www.npmjs.com/package/@coderoad/cli) with `npm install -g @coderoad/cli`. There have been some issues with the latest version. If `coderoad --version` doesn't work after installing, downgrade to `0.7.0` with `npm install -g @coderoad/cli@0.7.0`. ### Working on `main` + This set of instructions is for PRs that only make minor changes on `main` to **existing lessons**. That mainly consists of typo, grammar, hint, and instructional changes or fixes in the `TUTORIAL.md` file. For everything else, including adding or deleting lessons, follow the [working on a version branch instructions](#working-on-version-branch). You will not need to create a new version branch for this - you can create a PR following the instructions below. @@ -47,12 +50,14 @@ Follow these instructions to make a PR, keeping in mind that instructions usuall - Make a PR ### Testing changes on `main` + If you want to test your changes to `main` after using the above instructions, follow these instructions: - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on the new branch ### Reviewing PR's to `main` + If reviewing a PR that only changes `main` with instructional or grammar issues as described above, the changes in `TUTORIAL.md` should match the changes in `tutorial.json`. The `tutorial.json` file should not have changes to commit hashes, or step/level ids. Startup or level commands or file watchers likely should not be changed either. There are exceptions if there's an issue with a step, but they should be treated with more caution. @@ -60,6 +65,7 @@ The `tutorial.json` file should not have changes to commit hashes, or step/level Also, keep in mind that instructions usually use the lessons around them for context, so make sure they make sense. ### Working on version branch + > [!WARNING] > > Reminder: Never make or push changes to a version branch that is on one of the freeCodeCamp repos. Always create a new one @@ -86,10 +92,12 @@ Follow these instructions to create a new version: - Leave it here for reviewers ### Testing changes to a version branch + - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on whatever fork the changes are on. Make sure to use the file on the `feat: version-X.X.Y` branch and not the `main` branch ### Pushing a new version + Before pushing a new version, view the new `feat/version-vX.X.Y` (will be merged to `main`) branch on the user's fork. Make sure there are additions to the `CHANGELOG.md` file that include the new changes, and the version in the two spots of `coderoad.yaml` matches the new version branch. If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` and `coderoad.yaml` files, have tested the changes using the instructions above, and want to push a new version of a tutorial: @@ -114,13 +122,17 @@ If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` - Finally, if any PRs for this version exists, close them ### How to revert to a previous version + - Create a new branch off the latest `main` with `git checkout -b revert/to-version-X.X.X` - Revert all commits on this branch up to and including the commit of the version after the one you want to revert to. For example, you may have commits that look like this: + ``` fix: typo release: version 1.0.1 fix: typo release: version 1.0.0 ``` + If you want to revert to v1.0.0, revert all the commits from `release: version 1.0.1` and after + - Create a PR. Give it a title of `revert: to version X.X.X` diff --git a/docs/i18n/italian/curriculum-file-structure.md b/docs/i18n/italian/curriculum-file-structure.md index 30228e7555..4c2bfffa88 100644 --- a/docs/i18n/italian/curriculum-file-structure.md +++ b/docs/i18n/italian/curriculum-file-structure.md @@ -15,6 +15,7 @@ Questi sono alcuni termini che usiamo quando discutiamo il contenuto del nostro Usando quei termini, ecco come la struttura dei file viene definita: + ```md curriculum/ @@ -62,7 +63,7 @@ Quando rinomini una certificazione, vorrai probabilmente rinominare il superbloc Inoltre, probabilmente vorrai rinominare il certificato e il blocco `{superBlock}-projects` quando rinomini un superblocco visto che condividono tutti un nome. Per rinominare solo un superblocco devi: 1. Rinominare la cartella del superblocco nella cartella `curriculum/challenges/english`. -1. Rinominare la cartella del superblocco in *tutte* le altre cartelle `curriculum/challenges/{language}`. +1. Rename the superBlock folder in _all_ other `curriculum/challenges/{language}` directories. 1. Per ogni blocco dentro quel superblocco, aggiorna il valore `superBlock` nel file `meta.json` al suo nome a trattini. Non hai bisogno di rinominare alcuna cartella qui. Fallo quando rinomini un blocco. 1. Rinomina la cartella del superblocco in `client/src/pages/learn`. 1. Aggiorna il file `index.md` nella cartella qui sopra, cambiando i valori `title` e `superBlock` al nuovo nome. @@ -79,7 +80,7 @@ Inoltre, probabilmente vorrai rinominare il certificato e il blocco `{superBlock Quando rinomini un blocco del curriculum, devi: 1. Cambiare il nome della cartella nella directory `curriculum/challenges/english/{superBlock}`. -1. Cambiare il nome della cartella dello stesso blocco in *tutte* le directory delle altre lingue. Queste devono tutte essere uguali alla struttura inglese o il build avrà errori. +1. Change the name of the same block folder in _all_ of the other language directories to match. Queste devono tutte essere uguali alla struttura inglese o il build avrà errori. 1. Cambia il nome della cartella del blocco nella directory `_meta`. 1. Aggiorna le proprietà `name` e `dashedName` per il `meta.json` di quel blocco. 1. Aggiorna `client/utils/help-category-map.json` inmodo che usi il nuovo nome del blocco come chiave. @@ -94,7 +95,7 @@ Quando rinomini il file di una singola sfida, devi: 1. Cambiare il nome del file della sfida nella directory `curriculum/challenges/english`. 1. Cambiare i valori di `title` e `dashedName` in quel file. -1. Cambia il nome del file e il valore di `dashedName` in quei file per *tutte* le directory delle altre lingue. +1. Change the name of the file, and the `dashedName` in those files for _all_ of the other language directories to match. 1. Cambiare il nome della sfida nel file `meta.json` rilevante. I nomi delle sfide qui non sono usati nel build, ma forniscono un metodo user-friendly per identificare l'ordine delle sfide. 1. Se la sfida è un progetto di un certificato, aggiorna il file YAML in `curriculum/english/12-certificates/` con il nuovo nome. 1. Se la sfida è un progetto di un certificato, aggiorna `title` e `link` in `client/src/resources/cert-and-project-map.ts` diff --git a/docs/i18n/italian/how-to-catch-outgoing-emails-locally.md b/docs/i18n/italian/how-to-catch-outgoing-emails-locally.md index 2fb1b12b17..d2ce9d2e06 100644 --- a/docs/i18n/italian/how-to-catch-outgoing-emails-locally.md +++ b/docs/i18n/italian/how-to-catch-outgoing-emails-locally.md @@ -29,54 +29,60 @@ docker stop mailhog per arrestarlo. -Quando l'installazione è completa, puoi iniziare a [usare MailHog](#using-mailhog). +Quando l'installazione è completa, puoi iniziare a [usare MailHog](#using-mailhog). -
Installare MailHog su macOS +
-Installa MailHog su macOS con [Homebrew](https://brew.sh/): +
Installing MailHog on macOS + +Install MailHog on macOS with [Homebrew](https://brew.sh/): ```bash brew install mailhog brew services start mailhog ``` -I comandi qui sopra avvieranno un servizio mailhog in background. +The above commands will start a mailhog service in the background. -Quando l'installazione sarà completa, potrai iniziare a [usare MailHog](#using-mailhog).
+When the installation completes, you can start [using MailHog](#using-mailhog). -
Installare MailHog su Windows +
-Scarica l'ultima versione di MailHog dal [repository ufficiale di MailHog](https://github.com/mailhog/MailHog/releases). Trova e clicca sul link per la tua versione di Windows (32 o 64 bit) e un file .exe sarà scaricato sul tuo computer. +
Installing MailHog on Windows -Quando il download è stato completato, clicca per aprire il file. Potrebbe comparire una notifica del firewall di Windows, chiedendo i permessi di accesso per MailHog. Dopo aver consentito l'accesso nel firewall, si aprirà un prompt standard della riga di comando di Windows con MailHog in esecuzione. +Download the latest version of MailHog from [MailHog's official repository](https://github.com/mailhog/MailHog/releases). Locate and click on the link for your Windows version (32 or 64 bit) and a .exe file will be downloaded to your computer. -Chiudi MailHog chiudendo la finestra del prompt dei comandi. Per riaprire MailHog, clicka sul file eseguibile (.exe) di MailHog che è stato scaricato all'inizio; non è necessario scaricare un nuovo file di installazione. +When the download completes, click to open the file. A Windows firewall notification may appear, requesting access permission for MailHog. A standard Windows command line prompt will open where MailHog will be running once firewall access is granted. -Inizia a [usare MailHog](#using-mailhog).
+Close MailHog by closing the command prompt window. To start MailHog again, click on the MailHog executable (.exe) file that was downloaded initially - it is not necessary to download a new MailHog installation file. -
Installare MailHog su Linux +Start [using MailHog](#using-mailhog). -Come prima cosa, installa [Go](https://golang.org). +
-Usa i seguenti comandi per installare GO su sistemi basati su Debian come Ubuntu e Linux Mint. +
Installing MailHog on Linux + +First, install [Go](https://golang.org). + +Run the following commands to install GO on Debian-based systems like Ubuntu and Linux Mint. ```bash sudo apt-get install golang ``` -Usa i seguenti comandi per installare GO su sistemi basati su RPM come CentOS, Fedora, Red Hat Lnux, ecc. +Run the following commands to install GO on RPM-based systems like CentOS, Fedora, Red Hat Linux, etc. ```bash sudo dnf install golang ``` -In alternativa, esegui i seguenti comandi per installare GO. +Alternatively, run the following commands to install GO. ```bash sudo yum install golang ``` -Ora imposta il path per Go con i seguenti comandi. +Now set the path for Go with the following commands. ```bash echo "export GOPATH=$HOME/go" >> ~/.profile @@ -84,7 +90,7 @@ echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.profile source ~/.profile ``` -In fine, esegui i comandi seguenti per installare ed eseguire MailHog. +Finally, enter the commands below to install and run MailHog. ```bash go get github.com/mailhog/MailHog @@ -92,23 +98,25 @@ sudo cp /home/$(whoami)/go/bin/MailHog /usr/local/bin/mailhog mailhog ``` -Inizia a [usare MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + + ## Usare Mailhog -Apri una nuova scheda o finestra del browser e vai su [http://localhost:8025](http://localhost:8025) per aprire l'inbox di MailHog dopo che l'installazione è stata completata e MailHog è in esecuzione. L'inbox apparirà come nello screenshot qui sotto. +Open a new browser tab or window and navigate to [http://localhost:8025](http://localhost:8025) to open your MailHog inbox when the MailHog installation has completed and MailHog is running. The inbox will appear similar to the screenshot below. ![MailHog Screenshot 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg) -Le email spedite dalla tua installazione di freeCodeCamp appariranno come segue +Emails sent by your freeCodeCamp installation will appear as below ![MailHog Screenshot 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg) -Quando aprirai una mail saranno disponibili due tab che permettono di vedere le mail come solo testo o come contenuto sorgente. Assicurati che la tab solo testo sia selezionata come segue. +Two tabs that allow you to view either plain text or source content will be available when you open a given email. Ensure that the plain text tab is selected as below. ![MailHog Screenshot 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg) -Tutti i link delle email dovrebbero essere clickabili e portare al loro URL. +All links in the email should be clickable and resolve to their URL. ## Link Utili diff --git a/docs/i18n/italian/how-to-help-with-video-challenges.md b/docs/i18n/italian/how-to-help-with-video-challenges.md index 81841147b7..dd7469ac7f 100644 --- a/docs/i18n/italian/how-to-help-with-video-challenges.md +++ b/docs/i18n/italian/how-to-help-with-video-challenges.md @@ -8,7 +8,6 @@ Le pagine della sfida video sono create dai membri del team freeCodeCamp. Anche Puoi aiutare creando domande a scelta multipla legate a sezioni del video e aggiungendo le domande ai file markdown per le sfide video. - ## Template delle sfide Di seguito è riportato un modello di come appaiono i file markdown delle sfide. @@ -27,9 +26,7 @@ forumTopicId: 12345 Challenge description text, in markdown ```html -
- example code -
+
example code
```` # --question-- @@ -55,7 +52,6 @@ Altre risposte ## --video-solution-- Il numero della risposta corretta va qui. - ```` ## Creare domande per le sfide video @@ -76,6 +72,7 @@ Scegli un file markdown dalle opzioni sopra. Come prima cosa, trova l'id del video. Ad esempio, nel seguente codice preso dall'intestazione di un file di markdown di una sfida video, il videoId è "nVAaxZ34khk". Su GitHub, le informazioni dovrebbero essere visibili in una tabella. + ```` --- id: 5e9a093a74c4063ca6f7c14d title: Data Analysis Example A challengeType: 11 @@ -83,12 +80,12 @@ videoId: nVAaxZ34khk --- ``` -Come cosa successiva, accedi al video YouYube con quel `videoId`. L'URL del video sarà: -https://www.youtube.com/watch?v=[videoId] (sostituisci`videoId` nell'URL con l'ID del video, senza parentesi quadre) +Come cosa successiva, accedi al video YouYube con quel `videoId`. The URL for the video will be: +https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) -Nell'esempio precedente, l'URL è https://www.youtube.com/watch?v=nVAaxZ34khk +In the example above, the URL is https://www.youtube.com/watch?v=nVAaxZ34khk -Consulta velocemente il video YouTube con quel videoId e pensa a una domanda a scelta multipla basata sul contenuto del video. +Skim the YouTube video with that videoId and think of a multiple-choice question based on the content of the video. ### Aggiungere la domanda al file markdown @@ -120,12 +117,14 @@ More answers 1 ``` -Aggiungi/Cambia il testo della domanda sotto la parte che dice: +Add/Update the question text under the part that shows: + ``` # --question-- ## --text-- ``` + Add/Update answers (`Answer 1`, `Answer 2`, and so on) sotto `## --answers--`. Assicurati di aggiornare il numero sotto `## --video-solution--` con il numero della risposta corretta. Puoi aggiungere altre possibili domande seguendo lo stesso formato. Le domande e le risposte possono essere racchiuse tra virgolette. ### Esempi di domande @@ -134,14 +133,16 @@ Add/Update answers (`Answer 1`, `Answer 2`, and so on) sotto `## --answers--`. A # --question-- ## --text-- -Cosa visualizzerà questo codice JavaScript nella console? + +What does this JavaScript code log to the console? + ```js console.log('hello world'); ```` ## --answers-- -hello *world* +hello _world_ --- @@ -154,16 +155,16 @@ hello world --- ## --video-solution-- + 3 ```` ````md - # --question-- ## --text-- -Cosa verrà visualizzato dopo l'esecuzione di questo codice: +What will print out after running this code: ```py width = 15 diff --git a/docs/i18n/italian/how-to-open-a-pull-request.md b/docs/i18n/italian/how-to-open-a-pull-request.md index 4c1e381c97..a77a658778 100644 --- a/docs/i18n/italian/how-to-open-a-pull-request.md +++ b/docs/i18n/italian/how-to-open-a-pull-request.md @@ -132,37 +132,37 @@ Quando stai lavorando su funzionalità dei rami `next-*` del nuovo curriculum, d a. Elimina anche il ramo locale dopo aver effettuato un backup (se lo hai ancora localmente): - ```console - git checkout + ```console + git checkout - # example: - # git checkout feat/add-numpy-video-question + # example: + # git checkout feat/add-numpy-video-question - git checkout -b + git checkout -b - # example: - # git checkout -b backup-feat/add-numpy-video-question + # example: + # git checkout -b backup-feat/add-numpy-video-question - git branch -D - ``` + git branch -D + ``` b. O solo un backup del ramo pr (se non lo hai localmente): - ```console - git checkout -b origin/ + ```console + git checkout -b origin/ - # esempio: - # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question - ``` + # example: + # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question + ``` -4. Inizia con una slate pulita: +3. Inizia con una slate pulita: ```console git checkout -b next-python-projects git cherry-pick ``` -5. Risolvere eventuali conflitti e pulire, installare test di esecuzione +4. Risolvere eventuali conflitti e pulire, installare test di esecuzione ```console npm run clean @@ -176,7 +176,7 @@ Quando stai lavorando su funzionalità dei rami `next-*` del nuovo curriculum, d ``` -6. Se tutto sembra funzionare fai un push alla PR +5. Se tutto sembra funzionare fai un push alla PR ```console git push --force origin diff --git a/docs/i18n/italian/how-to-test-translations-locally.md b/docs/i18n/italian/how-to-test-translations-locally.md index 27cbf84ed0..ad903a38f5 100644 --- a/docs/i18n/italian/how-to-test-translations-locally.md +++ b/docs/i18n/italian/how-to-test-translations-locally.md @@ -143,7 +143,7 @@ Per le sfide video, devi cambiare alcune cose. Come prima cosa aggiungi la nuova ... ``` -Quindi aggiungi un id per la nuova lingua ogni sfida video in un blocco verificato (`auditedCerts`). Per esempio, se `auditedCerts` in `all-langs.js` include `scientific-computing-with-python` per `dothraki`, allora devi aggiungere `dothraki` in `videoLocaleIds`. Il frontespizio dovrebbe essere simile a questo: +Quindi aggiungi un id per la nuova lingua ogni sfida video in un blocco verificato (`auditedCerts`). Per esempio, se `auditedCerts` in `all-langs.js` include `scientific-computing-with-python` per `dothraki`, allora devi aggiungere `dothraki` in `videoLocaleIds`. Il frontespizio dovrebbe essere simile a questo: ```yml videoLocaleIds: diff --git a/docs/i18n/italian/how-to-use-docker-on-windows-home.md b/docs/i18n/italian/how-to-use-docker-on-windows-home.md index 185b350e96..d870187a95 100644 --- a/docs/i18n/italian/how-to-use-docker-on-windows-home.md +++ b/docs/i18n/italian/how-to-use-docker-on-windows-home.md @@ -12,4 +12,4 @@ Se vedi messaggi come bash: change_volumes_owner.sh: No such file or directory ``` -quando usi `npm run docker:init` questa è molto probabilmente la causa. \ No newline at end of file +quando usi `npm run docker:init` questa è molto probabilmente la causa. diff --git a/docs/i18n/italian/how-to-work-on-coding-challenges.md b/docs/i18n/italian/how-to-work-on-coding-challenges.md index 187da1f455..4201e81cf6 100644 --- a/docs/i18n/italian/how-to-work-on-coding-challenges.md +++ b/docs/i18n/italian/how-to-work-on-coding-challenges.md @@ -287,7 +287,7 @@ Le sfide dovrebbero avere il numero minimo di test per verificare che un camper Il nostro obbiettivo è comunicare il singolo punto che la sfida sta cercando di insegnare, e testare che abbiano capito il punto. -I test delle sfide possono fare uso delle librerie di asserzioni Node.js e Chai.js. E, se necessario, il codice generato dall'utente può essere acceduto dalla variabile `code`. In aggiunta, l'oggetto `__helpers` mette a disposizione diverse funzioni che semplificano il processo di scrittura dei test. Le funzioni disponibili sono definite in _client/src/utils/curriculum-helpers.ts_. +I test delle sfide possono fare uso delle librerie di asserzioni Node.js e Chai.js. E, se necessario, il codice generato dall'utente può essere acceduto dalla variabile `code`. In aggiunta, l'oggetto `__helpers` mette a disposizione diverse funzioni che semplificano il processo di scrittura dei test. Le funzioni disponibili sono definite in _client/src/utils/curriculum-helpers.ts_. ## Formattare codice di seed diff --git a/docs/i18n/italian/how-to-work-on-the-news-theme.md b/docs/i18n/italian/how-to-work-on-the-news-theme.md index b1e7b91c7e..1490a9b4ce 100644 --- a/docs/i18n/italian/how-to-work-on-the-news-theme.md +++ b/docs/i18n/italian/how-to-work-on-the-news-theme.md @@ -84,6 +84,7 @@ Uno trucco davvero pulito è che è anche possibile creare modelli una tantum pe ```sh npm run zip ``` + ## Altri riferimenti e risorse ### Funzionalità PostCSS Utilizzate diff --git a/docs/i18n/italian/how-to-work-on-tutorials-that-use-coderoad.md b/docs/i18n/italian/how-to-work-on-tutorials-that-use-coderoad.md index bfc97bd62d..6a0c42d0df 100644 --- a/docs/i18n/italian/how-to-work-on-tutorials-that-use-coderoad.md +++ b/docs/i18n/italian/how-to-work-on-tutorials-that-use-coderoad.md @@ -1,6 +1,7 @@ This page describes how to contribute to the freeCodeCamp tutorials and projects that are completed using the CodeRoad VS Code extension. ## How the tutorials work + The freeCodeCamp tutorials that use CodeRoad each have their own repo under the freeCodeCamp GitHub organization. They all start with `learn-`. For example, `https://github.com/freeCodeCamp/learn-bash-by-building-a-boilerplate/`. Each tutorial repo has a `main` branch and a "version" branch, e.g. `v1.0.0`. @@ -20,11 +21,13 @@ In order to make changes to commits on a version branch, you would need to rebas ## How to contribute ### Prerequisites + Install the [CodeRoad CLI tools](https://www.npmjs.com/package/@coderoad/cli) with `npm install -g @coderoad/cli`. There have been some issues with the latest version. If `coderoad --version` doesn't work after installing, downgrade to `0.7.0` with `npm install -g @coderoad/cli@0.7.0`. ### Working on `main` + This set of instructions is for PRs that only make minor changes on `main` to **existing lessons**. That mainly consists of typo, grammar, hint, and instructional changes or fixes in the `TUTORIAL.md` file. For everything else, including adding or deleting lessons, follow the [working on a version branch instructions](#working-on-version-branch). You will not need to create a new version branch for this - you can create a PR following the instructions below. @@ -47,12 +50,14 @@ Follow these instructions to make a PR, keeping in mind that instructions usuall - Make a PR ### Testing changes on `main` + If you want to test your changes to `main` after using the above instructions, follow these instructions: - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on the new branch ### Reviewing PR's to `main` + If reviewing a PR that only changes `main` with instructional or grammar issues as described above, the changes in `TUTORIAL.md` should match the changes in `tutorial.json`. The `tutorial.json` file should not have changes to commit hashes, or step/level ids. Startup or level commands or file watchers likely should not be changed either. There are exceptions if there's an issue with a step, but they should be treated with more caution. @@ -60,6 +65,7 @@ The `tutorial.json` file should not have changes to commit hashes, or step/level Also, keep in mind that instructions usually use the lessons around them for context, so make sure they make sense. ### Working on version branch + > [!WARNING] > > Reminder: Never make or push changes to a version branch that is on one of the freeCodeCamp repos. Always create a new one @@ -86,10 +92,12 @@ Follow these instructions to create a new version: - Leave it here for reviewers ### Testing changes to a version branch + - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on whatever fork the changes are on. Make sure to use the file on the `feat: version-X.X.Y` branch and not the `main` branch ### Pushing a new version + Before pushing a new version, view the new `feat/version-vX.X.Y` (will be merged to `main`) branch on the user's fork. Make sure there are additions to the `CHANGELOG.md` file that include the new changes, and the version in the two spots of `coderoad.yaml` matches the new version branch. If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` and `coderoad.yaml` files, have tested the changes using the instructions above, and want to push a new version of a tutorial: @@ -114,13 +122,17 @@ If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` - Finally, if any PRs for this version exists, close them ### How to revert to a previous version + - Create a new branch off the latest `main` with `git checkout -b revert/to-version-X.X.X` - Revert all commits on this branch up to and including the commit of the version after the one you want to revert to. For example, you may have commits that look like this: + ``` fix: typo release: version 1.0.1 fix: typo release: version 1.0.0 ``` + If you want to revert to v1.0.0, revert all the commits from `release: version 1.0.1` and after + - Create a PR. Give it a title of `revert: to version X.X.X` diff --git a/docs/i18n/japanese/curriculum-file-structure.md b/docs/i18n/japanese/curriculum-file-structure.md index 9efbc99c2e..946eb7dd5f 100644 --- a/docs/i18n/japanese/curriculum-file-structure.md +++ b/docs/i18n/japanese/curriculum-file-structure.md @@ -15,6 +15,7 @@ There are a few terms we use when discussing our curriculum content. Using those terms, here is how the file structure would be defined: + ```md curriculum/ @@ -62,7 +63,7 @@ When renaming a certification, you will likely want to rename the associated sup Also, you will likely want to rename the certificate and the `{superBlock}-projects` block when you rename a superBlock since they all shares a name. To rename only a superBlock you need to: 1. Rename the superBlock folder in the `curriculum/challenges/english` directory. -1. Rename the superBlock folder in *all* other `curriculum/challenges/{language}` directories. +1. Rename the superBlock folder in _all_ other `curriculum/challenges/{language}` directories. 1. For each block within that superBlock, update the `superBlock` value in the `meta.json` file to its dashedName. You don't need to rename any folders here. Do that when renaming a block. 1. Rename the superblock folder in `client/src/pages/learn`. 1. Update the `index.md` file in the above folder, changing the `title` and `superBlock` values to the new name. @@ -79,7 +80,7 @@ Also, you will likely want to rename the certificate and the `{superBlock}-proje When renaming a curriculum block, you need to: 1. Change the name of the block folder in the `curriculum/challenges/english/{superBlock}` directory. -1. Change the name of the same block folder in *all* of the other language directories to match. These must all be the same as the English structure or the build will error out. +1. Change the name of the same block folder in _all_ of the other language directories to match. These must all be the same as the English structure or the build will error out. 1. Change the name of the block folder in the `_meta` directory. 1. Update the `name` and `dashedName` property for that block's `meta.json` file. 1. Update the `client/utils/help-category-map.json` to use the new block name as the key. @@ -94,7 +95,7 @@ When renaming a single challenge file, you need to: 1. Change the name of the challenge file in the `curriculum/challenges/english` directory. 1. Change the name of the `title` and `dashedName` within that file. -1. Change the name of the file, and the `dashedName` in those files for *all* of the other language directories to match. +1. Change the name of the file, and the `dashedName` in those files for _all_ of the other language directories to match. 1. Update the name of the challenge in the relevant `meta.json` file. The challenge names here are not used in the build, but provide a user-friendly way to identify the challenge order. 1. If the challenge is a certificate project, update the YAML file in `curriculum/english/12-certificates/` to the new name. 1. If the challenge is a certificate project, update the `title` and `link` in `client/src/resources/cert-and-project-map.ts` diff --git a/docs/i18n/japanese/how-to-catch-outgoing-emails-locally.md b/docs/i18n/japanese/how-to-catch-outgoing-emails-locally.md index 38927b31da..a1324042b8 100644 --- a/docs/i18n/japanese/how-to-catch-outgoing-emails-locally.md +++ b/docs/i18n/japanese/how-to-catch-outgoing-emails-locally.md @@ -29,7 +29,9 @@ docker stop mailhog to stop it. -When the installation completes, you can start [using MailHog](#using-mailhog). +When the installation completes, you can start [using MailHog](#using-mailhog). + +
Installing MailHog on macOS @@ -42,7 +44,9 @@ brew services start mailhog The above commands will start a mailhog service in the background. -When the installation completes, you can start [using MailHog](#using-mailhog).
+When the installation completes, you can start [using MailHog](#using-mailhog). + +
Installing MailHog on Windows @@ -52,7 +56,9 @@ When the download completes, click to open the file. A Windows firewall notifica Close MailHog by closing the command prompt window. To start MailHog again, click on the MailHog executable (.exe) file that was downloaded initially - it is not necessary to download a new MailHog installation file. -Start [using MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + +
Installing MailHog on Linux @@ -92,7 +98,9 @@ sudo cp /home/$(whoami)/go/bin/MailHog /usr/local/bin/mailhog mailhog ``` -Start [using MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + + ## Using MailHog diff --git a/docs/i18n/japanese/how-to-help-with-video-challenges.md b/docs/i18n/japanese/how-to-help-with-video-challenges.md index 387d43f2b3..e8b769db1f 100644 --- a/docs/i18n/japanese/how-to-help-with-video-challenges.md +++ b/docs/i18n/japanese/how-to-help-with-video-challenges.md @@ -8,7 +8,6 @@ The video challenge pages are created by members of the freeCodeCamp team. YouTu You can help by creating multiple-choice questions related to video sections and adding the questions to the markdown files for the video challenges. - ## Challenge Template Below is a template of what the challenge markdown files look like. @@ -27,9 +26,7 @@ forumTopicId: 12345 Challenge description text, in markdown ```html -
- example code -
+
example code
```` # --question-- @@ -55,7 +52,6 @@ More answers ## --video-solution-- The number for the correct answer goes here. - ```` ## Creating questions for video challenges @@ -76,6 +72,7 @@ Pick a challenge markdown file from the options above. First, find the videoId. For example, in the following code from the header of a video challenge markdown file, the videoId is "nVAaxZ34khk". On GitHub, the information should be laid out in a table format. + ```` --- id: 5e9a093a74c4063ca6f7c14d title: Data Analysis Example A challengeType: 11 @@ -84,7 +81,7 @@ videoId: nVAaxZ34khk ``` Next, access the YouTube video with that `videoId`. The URL for the video will be: -https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) +https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) In the example above, the URL is https://www.youtube.com/watch?v=nVAaxZ34khk @@ -120,12 +117,14 @@ More answers 1 ``` -Add/Update the question text under the part that shows: +Add/Update the question text under the part that shows: + ``` # --question-- ## --text-- ``` + Add/Update answers (`Answer 1`, `Answer 2`, and so on) under `## --answers--`. Make sure to update the number under `## --video-solution--` with the correct answer number. You can add more possible answers using the same format. The question and answers can be surrounded with quotation marks. ### Question examples @@ -134,14 +133,16 @@ Add/Update answers (`Answer 1`, `Answer 2`, and so on) under `## --answers--`. M # --question-- ## --text-- + What does this JavaScript code log to the console? + ```js console.log('hello world'); ```` ## --answers-- -hello *world* +hello _world_ --- @@ -154,11 +155,11 @@ hello world --- ## --video-solution-- + 3 ```` ````md - # --question-- ## --text-- diff --git a/docs/i18n/japanese/how-to-open-a-pull-request.md b/docs/i18n/japanese/how-to-open-a-pull-request.md index 681b1811fe..bb2a3353a0 100644 --- a/docs/i18n/japanese/how-to-open-a-pull-request.md +++ b/docs/i18n/japanese/how-to-open-a-pull-request.md @@ -132,37 +132,37 @@ When you are working on features for our upcoming curriculum `next-*` branches, a. Either delete your local branch after taking a backup (if you still have it locally): - ```console - git checkout + ```console + git checkout - # example: - # git checkout feat/add-numpy-video-question + # example: + # git checkout feat/add-numpy-video-question - git checkout -b + git checkout -b - # example: - # git checkout -b backup-feat/add-numpy-video-question + # example: + # git checkout -b backup-feat/add-numpy-video-question - git branch -D - ``` + git branch -D + ``` b. Or just a backup of your pr branch (if you do not have it locally): - ```console - git checkout -b origin/ + ```console + git checkout -b origin/ - # example: - # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question - ``` + # example: + # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question + ``` -4. Start off with a clean slate: +3. Start off with a clean slate: ```console git checkout -b next-python-projects git cherry-pick ``` -5. Resolve any conflicts, and cleanup, install run tests +4. Resolve any conflicts, and cleanup, install run tests ```console npm run clean @@ -176,7 +176,7 @@ When you are working on features for our upcoming curriculum `next-*` branches, ``` -6. If everything looks good push back to the PR +5. If everything looks good push back to the PR ```console git push --force origin diff --git a/docs/i18n/japanese/how-to-test-translations-locally.md b/docs/i18n/japanese/how-to-test-translations-locally.md index e3ad9d37d1..c0ff23e4c1 100644 --- a/docs/i18n/japanese/how-to-test-translations-locally.md +++ b/docs/i18n/japanese/how-to-test-translations-locally.md @@ -143,7 +143,7 @@ For the video challenges, you need to change a few things. First add the new loc ... ``` -Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: +Then add an id for the new language to any video challenge in an audited block. For example, if `auditedCerts` in `all-langs.js` includes `scientific-computing-with-python` for `dothraki`, then you must add a `dothraki` entry in `videoLocaleIds`. The frontmatter should then look like this: ```yml videoLocaleIds: diff --git a/docs/i18n/japanese/how-to-use-docker-on-windows-home.md b/docs/i18n/japanese/how-to-use-docker-on-windows-home.md index d336c2b94d..f67572d27c 100644 --- a/docs/i18n/japanese/how-to-use-docker-on-windows-home.md +++ b/docs/i18n/japanese/how-to-use-docker-on-windows-home.md @@ -12,4 +12,4 @@ If you see messages like bash: change_volumes_owner.sh: No such file or directory ``` -when you `npm run docker:init` this is likely the culprit. \ No newline at end of file +when you `npm run docker:init` this is likely the culprit. diff --git a/docs/i18n/japanese/how-to-work-on-coding-challenges.md b/docs/i18n/japanese/how-to-work-on-coding-challenges.md index f671bb00a6..af2cc43bef 100644 --- a/docs/i18n/japanese/how-to-work-on-coding-challenges.md +++ b/docs/i18n/japanese/how-to-work-on-coding-challenges.md @@ -287,7 +287,7 @@ Challenges should have the minimum number of tests necessary to verify that a ca Our goal is to communicate the single point that the challenge is trying to teach, and test that they have understood that point. -Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. +Challenge tests can make use of the Node.js and Chai.js assertion libraries. Also, if needed, user-generated code can be accessed in the `code` variable. In addition, the `__helpers` object exposes several functions that simplify the process of writing tests. The available functions are defined in _client/src/utils/curriculum-helpers.ts_. ## Formatting seed code diff --git a/docs/i18n/japanese/how-to-work-on-the-news-theme.md b/docs/i18n/japanese/how-to-work-on-the-news-theme.md index 59f1f2360e..bf899521ee 100644 --- a/docs/i18n/japanese/how-to-work-on-the-news-theme.md +++ b/docs/i18n/japanese/how-to-work-on-the-news-theme.md @@ -84,6 +84,7 @@ One really neat trick is that you can also create custom one-off templates just ```sh npm run zip ``` + ## Other Reference and resources ### PostCSS Features Used diff --git a/docs/i18n/japanese/how-to-work-on-tutorials-that-use-coderoad.md b/docs/i18n/japanese/how-to-work-on-tutorials-that-use-coderoad.md index bfc97bd62d..6a0c42d0df 100644 --- a/docs/i18n/japanese/how-to-work-on-tutorials-that-use-coderoad.md +++ b/docs/i18n/japanese/how-to-work-on-tutorials-that-use-coderoad.md @@ -1,6 +1,7 @@ This page describes how to contribute to the freeCodeCamp tutorials and projects that are completed using the CodeRoad VS Code extension. ## How the tutorials work + The freeCodeCamp tutorials that use CodeRoad each have their own repo under the freeCodeCamp GitHub organization. They all start with `learn-`. For example, `https://github.com/freeCodeCamp/learn-bash-by-building-a-boilerplate/`. Each tutorial repo has a `main` branch and a "version" branch, e.g. `v1.0.0`. @@ -20,11 +21,13 @@ In order to make changes to commits on a version branch, you would need to rebas ## How to contribute ### Prerequisites + Install the [CodeRoad CLI tools](https://www.npmjs.com/package/@coderoad/cli) with `npm install -g @coderoad/cli`. There have been some issues with the latest version. If `coderoad --version` doesn't work after installing, downgrade to `0.7.0` with `npm install -g @coderoad/cli@0.7.0`. ### Working on `main` + This set of instructions is for PRs that only make minor changes on `main` to **existing lessons**. That mainly consists of typo, grammar, hint, and instructional changes or fixes in the `TUTORIAL.md` file. For everything else, including adding or deleting lessons, follow the [working on a version branch instructions](#working-on-version-branch). You will not need to create a new version branch for this - you can create a PR following the instructions below. @@ -47,12 +50,14 @@ Follow these instructions to make a PR, keeping in mind that instructions usuall - Make a PR ### Testing changes on `main` + If you want to test your changes to `main` after using the above instructions, follow these instructions: - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on the new branch ### Reviewing PR's to `main` + If reviewing a PR that only changes `main` with instructional or grammar issues as described above, the changes in `TUTORIAL.md` should match the changes in `tutorial.json`. The `tutorial.json` file should not have changes to commit hashes, or step/level ids. Startup or level commands or file watchers likely should not be changed either. There are exceptions if there's an issue with a step, but they should be treated with more caution. @@ -60,6 +65,7 @@ The `tutorial.json` file should not have changes to commit hashes, or step/level Also, keep in mind that instructions usually use the lessons around them for context, so make sure they make sense. ### Working on version branch + > [!WARNING] > > Reminder: Never make or push changes to a version branch that is on one of the freeCodeCamp repos. Always create a new one @@ -86,10 +92,12 @@ Follow these instructions to create a new version: - Leave it here for reviewers ### Testing changes to a version branch + - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on whatever fork the changes are on. Make sure to use the file on the `feat: version-X.X.Y` branch and not the `main` branch ### Pushing a new version + Before pushing a new version, view the new `feat/version-vX.X.Y` (will be merged to `main`) branch on the user's fork. Make sure there are additions to the `CHANGELOG.md` file that include the new changes, and the version in the two spots of `coderoad.yaml` matches the new version branch. If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` and `coderoad.yaml` files, have tested the changes using the instructions above, and want to push a new version of a tutorial: @@ -114,13 +122,17 @@ If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` - Finally, if any PRs for this version exists, close them ### How to revert to a previous version + - Create a new branch off the latest `main` with `git checkout -b revert/to-version-X.X.X` - Revert all commits on this branch up to and including the commit of the version after the one you want to revert to. For example, you may have commits that look like this: + ``` fix: typo release: version 1.0.1 fix: typo release: version 1.0.0 ``` + If you want to revert to v1.0.0, revert all the commits from `release: version 1.0.1` and after + - Create a PR. Give it a title of `revert: to version X.X.X` diff --git a/docs/i18n/portuguese/_sidebar.md b/docs/i18n/portuguese/_sidebar.md index 8acf470ef0..b14233de6a 100644 --- a/docs/i18n/portuguese/_sidebar.md +++ b/docs/i18n/portuguese/_sidebar.md @@ -13,14 +13,14 @@ - **Contribuição de tradução** - [Ajude na tradução de recursos](how-to-translate-files.md) - [Ajude na revisão de traduções](how-to-proofread-files.md) -- **Resources** +- **Recursos** - [Configure freeCodeCamp no Windows (WSL)](how-to-setup-wsl.md) - [Adicione testes no Cypress](how-to-add-cypress-tests.md) - [Ajude na tradução da aplicação web](how-to-work-on-localized-client-webapp.md) - [Capture e-mails enviados localmente](how-to-catch-outgoing-emails-locally.md) - [Teste traduções localmente](how-to-test-translations-locally.md) - [Compreenda a estrutura do arquivo do currículo](curriculum-file-structure.md) - - [Work on tutorials w/ CodeRoad](how-to-work-on-tutorials-that-use-coderoad.md) + - [Trabalhe nos tutoriais com o CodeRoad](how-to-work-on-tutorials-that-use-coderoad.md) --- diff --git a/docs/i18n/portuguese/curriculum-file-structure.md b/docs/i18n/portuguese/curriculum-file-structure.md index 354381a4f2..2cb35bb810 100644 --- a/docs/i18n/portuguese/curriculum-file-structure.md +++ b/docs/i18n/portuguese/curriculum-file-structure.md @@ -15,6 +15,7 @@ Existem alguns termos que usamos quando discutimos o conteúdo do nosso currícu Ao usarmos esses termos, é assim que a estrutura de arquivos deve ser definida: + ```md curriculum/ @@ -62,7 +63,7 @@ Ao renomear uma certificação, você provavelmente vai querer renomear o superb Além disso, você provavelmente vai querer renomear o certificado e o bloco `{superBlock}-projects` quando renomear um superbloco, já que todos compartilham um mesmo nome. Faça o seguinte para renomear somente um superbloco: 1. Renomeie a pasta do superbloco no diretório `curriculum/challenges/english`. -1. Renomeie a pasta do superbloco em *todos* os outros diretórios `curriculum/challenges/{language}`. +1. Rename the superBlock folder in _all_ other `curriculum/challenges/{language}` directories. 1. Para cada bloco naquele superbloco, atualize o valor de `superBlock` no arquivo `meta.json` até seu dashedName. Você não precisa renomear as pastas aqui. Faça isso ao renomear um bloco. 1. Renomeie a pasta do superbloco em `client/src/pages/learn`. 1. Atualize o arquivo `index.md` na pasta acima, alterando os valores de `title` e `superBlock` com o novo nome. @@ -79,7 +80,7 @@ Além disso, você provavelmente vai querer renomear o certificado e o bloco `{s Faça o seguinte para renomear um bloco do currículo: 1. Mude o nome da pasta do bloco no diretório `curriculum/challenges/english/{superBlock}`. -1. Mude o nome da mesma pasta do bloco em *todos* os outros diretórios de idioma para que correspondam. Eles devem ter a mesma estrutura que a do inglês ou haverá um erro na build. +1. Change the name of the same block folder in _all_ of the other language directories to match. Eles devem ter a mesma estrutura que a do inglês ou haverá um erro na build. 1. Mude o nome da pasta do bloco no diretório `_meta`. 1. Atualize as propriedades `name` e `dashedName` para aquele arquivo `meta.json` do bloco. 1. Atualize `client/utils/help-category-map.json` para que use o novo nome do bloco como chave. @@ -94,7 +95,7 @@ Faça o seguinte para renomear um único arquivo de desafio: 1. Mude o nome do arquivo do desafio no diretório `curriculum/challenges/english/`. 1. Mude o nome de `title` e de `dashedName` naquele arquivo. -1. Mude o nome do arquivo e o `dashedName` naqueles arquivos para *todos* os outros diretórios de idiomas para que correspondam. +1. Change the name of the file, and the `dashedName` in those files for _all_ of the other language directories to match. 1. Atualize o nome do desafio no arquivo `meta.json` relevante. Os nomes dos desafios não são usados na build, mas fornecem uma alternativa mais fácil de identificar a ordem dos desafios. 1. Se o desafio for um projeto de certificado, atualize o arquivo YAML em `curriculum/english/12-certificates/` para o novo nome. 1. Se o desafio for um projeto de certificação, atualize o `title` e o `link` em `client/src/resources/cert-and-project-map.ts` diff --git a/docs/i18n/portuguese/how-to-catch-outgoing-emails-locally.md b/docs/i18n/portuguese/how-to-catch-outgoing-emails-locally.md index ca7f8115f5..70ca705c45 100644 --- a/docs/i18n/portuguese/how-to-catch-outgoing-emails-locally.md +++ b/docs/i18n/portuguese/how-to-catch-outgoing-emails-locally.md @@ -29,54 +29,60 @@ docker stop mailhog para para-lo. -Quando a instalação for concluída, você pode começar a [usar o MailHog](#using-mailhog). +Quando a instalação for concluída, você pode começar a [usar o MailHog](#using-mailhog). -
Instalando o MailHog no macOS +
-Instale o MailHog no macOS com o [Homebrew](https://brew.sh/): +
Installing MailHog on macOS + +Install MailHog on macOS with [Homebrew](https://brew.sh/): ```bash brew install mailhog brew services start mailhog ``` -Os comandos acima iniciarão um serviço do mailhog em segundo plano. +The above commands will start a mailhog service in the background. -Quando a instalação for concluída, você pode começar a [usar o MailHog](#using-mailhog).
+When the installation completes, you can start [using MailHog](#using-mailhog). -
Instalando o MailHog no Windows +
-Baixe a versão mais recente do MailHog no [repositório oficial do MailHog](https://github.com/mailhog/MailHog/releases). Localize e clique no link para a sua versão do Windows (32 ou 64 bits) e um arquivo .exe será baixado no seu computador. +
Installing MailHog on Windows -Quando o download terminar, clique para abrir o arquivo. Uma notificação de firewall do Windows pode aparecer, solicitando permissão de acesso para MailHog. Um prompt de linha de comando padrão do Windows abrirá onde o MailHog será executado quando o acesso ao firewall for concedido. +Download the latest version of MailHog from [MailHog's official repository](https://github.com/mailhog/MailHog/releases). Locate and click on the link for your Windows version (32 or 64 bit) and a .exe file will be downloaded to your computer. -Feche o MailHog fechando a janela do prompt. Para iniciar o MailHog novamente, clique no executável do MailHog (.exe) arquivo que foi baixado inicialmente - não é necessário baixar um novo arquivo de instalação do MailHog. +When the download completes, click to open the file. A Windows firewall notification may appear, requesting access permission for MailHog. A standard Windows command line prompt will open where MailHog will be running once firewall access is granted. -Comece a [usar o MailHog](#using-mailhog).
+Close MailHog by closing the command prompt window. To start MailHog again, click on the MailHog executable (.exe) file that was downloaded initially - it is not necessary to download a new MailHog installation file. -
Instalando o MailHog no Linux +Start [using MailHog](#using-mailhog). -Primeiro, instale o [Go](https://golang.org). +
-Execute os seguintes comandos para instalar GO em sistemas baseados em Debian, como o Ubuntu e o Linux Mint. +
Installing MailHog on Linux + +First, install [Go](https://golang.org). + +Run the following commands to install GO on Debian-based systems like Ubuntu and Linux Mint. ```bash sudo apt-get install golang ``` -Execute os seguintes comandos para instalar GO em sistemas baseados em RPM, como CentOS, Fedora, Red Hat Linux, etc. +Run the following commands to install GO on RPM-based systems like CentOS, Fedora, Red Hat Linux, etc. ```bash sudo dnf install golang ``` -Como alternativa, execute os seguintes comandos para instalar o GO. +Alternatively, run the following commands to install GO. ```bash sudo yum install golang ``` -Agora defina o caminho para o Go com os seguintes comandos. +Now set the path for Go with the following commands. ```bash echo "export GOPATH=$HOME/go" >> ~/.profile @@ -84,7 +90,7 @@ echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.profile source ~/.profile ``` -Finalmente, digite os comandos abaixo para instalar e executar MailHog. +Finally, enter the commands below to install and run MailHog. ```bash go get github.com/mailhog/MailHog @@ -92,23 +98,25 @@ sudo cp /home/$(whoami)/go/bin/MailHog /usr/local/bin/mailhog mailhog ``` -Comece a [usar o MailHog](#using-mailhog).
+Start [using MailHog](#using-mailhog). + + ## Usando o MailHog -Abra uma nova guia ou janela do navegador e navegue até [http://localhost:8025](http://localhost:8025) para abrir sua caixa de entrada do MailHog quando a instalação do MailHog for concluída e o MailHog estiver em execução. A caixa de entrada será similar à imagem abaixo. +Open a new browser tab or window and navigate to [http://localhost:8025](http://localhost:8025) to open your MailHog inbox when the MailHog installation has completed and MailHog is running. The inbox will appear similar to the screenshot below. -![Captura de tela do MailHog 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg) +![MailHog Screenshot 1](https://contribute.freecodecamp.org/images/mailhog/1.jpg) -E-mails enviados pela instalação do seu freeCodeCamp aparecerão assim +Emails sent by your freeCodeCamp installation will appear as below -![Captura de tela MailHog 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg) +![MailHog Screenshot 2](https://contribute.freecodecamp.org/images/mailhog/2.jpg) -Duas guias que permitem que você veja texto simples ou conteúdo fonte estarão disponíveis quando você abrir um determinado e-mail. Certifique-se de que a aba de texto simples esteja selecionada como abaixo. +Two tabs that allow you to view either plain text or source content will be available when you open a given email. Ensure that the plain text tab is selected as below. -![Captura de tela MailHog 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg) +![MailHog Screenshot 3](https://contribute.freecodecamp.org/images/mailhog/3.jpg) -Todos os links no e-mail devem ser clicáveis e redirecionar para a URL deles. +All links in the email should be clickable and resolve to their URL. ## Links úteis diff --git a/docs/i18n/portuguese/how-to-help-with-video-challenges.md b/docs/i18n/portuguese/how-to-help-with-video-challenges.md index d4615cd889..a9af9c17ba 100644 --- a/docs/i18n/portuguese/how-to-help-with-video-challenges.md +++ b/docs/i18n/portuguese/how-to-help-with-video-challenges.md @@ -8,7 +8,6 @@ As páginas de desafio em vídeo são criadas por membros da equipe freeCodeCamp Você pode ajudar criando questões de múltipla escolha e adicionando-as aos arquivos 'markdown' para os desafios em vídeo. - ## Modelo de desafio Abaixo está um modelo de arquivo markdown do desafio. @@ -27,9 +26,7 @@ forumTopicId: 12345 Challenge description text, in markdown ```html -
- example code -
+
example code
```` # --question-- @@ -55,7 +52,6 @@ Mais respostas ## --video-solution-- O número da resposta correta fica aqui. - ```` ## Criando perguntas para desafios em video @@ -76,6 +72,7 @@ Escolha um arquivo dentre as opções acima. Primeiro, localize o videoId. Por exemplo, no código a seguir a partir do cabeçalho de um arquivo markdown de desafio de vídeo, o videoId é "nVAaxZ34khk". No GitHub, a informação deve estar contida em formato tabular. + ```` --- id: 5e9a093a74c4063ca6f7c14d title: Data Analysis Example A challengeType: 11 @@ -83,12 +80,12 @@ videoId: nVAaxZ34khk --- ``` -Em seguida, acesse o vídeo no YouTube correspondente com aquele `videoId`. A URL do vídeo será: -https://www.youtube.com/watch?v=[videoId] (troque `videoId` na URL pelo ID do vídeo - sem colchetes) +Em seguida, acesse o vídeo no YouTube correspondente com aquele `videoId`. The URL for the video will be: +https://www.youtube.com/watch?v=[videoId] (replace `videoId` in the URL with the video's ID - without square brackets) -No exemplo acima, a URL seria https://www.youtube.com/watch?v=nVAaxZ34khk +In the example above, the URL is https://www.youtube.com/watch?v=nVAaxZ34khk -Assista ao vídeo no YouTube daquele videoId e pense em uma questão de múltipla escolha baseada em seu conteúdo. +Skim the YouTube video with that videoId and think of a multiple-choice question based on the content of the video. ### Adicione a pergunta ao arquivo markdown @@ -120,12 +117,14 @@ Mais respostas 1 ``` -Adicione/atualize o texto da pergunta sob a parte que diz: +Add/Update the question text under the part that shows: + ``` # --question-- ## --text-- ``` + Adicione/Atualize (`Answer 1`, `Answer 2`, e assim por diante) sob `## --answers--`. Confirme se o número sob `## --video-solution--` seja o número da resposta correta. Você pode adicionar mais respostas possíveis usando o mesmo formato. Tanto a pergunta quanto as respostas podem estar entre aspas. ### Exemplos de perguntas @@ -134,14 +133,16 @@ Adicione/Atualize (`Answer 1`, `Answer 2`, e assim por diante) sob `## --answers # --question-- ## --text-- -O que esse código JavaScript mostra no console? + +What does this JavaScript code log to the console? + ```js console.log('hello world'); ```` ## --answers-- -hello *world* +hello _world_ --- @@ -154,16 +155,16 @@ hello world --- ## --video-solution-- + 3 ```` ````md - # --question-- ## --text-- -O que aparecerá após executar esse código: +What will print out after running this code: ```py width = 15 diff --git a/docs/i18n/portuguese/how-to-open-a-pull-request.md b/docs/i18n/portuguese/how-to-open-a-pull-request.md index 6e12747bff..f8161d17c3 100644 --- a/docs/i18n/portuguese/how-to-open-a-pull-request.md +++ b/docs/i18n/portuguese/how-to-open-a-pull-request.md @@ -132,37 +132,37 @@ Quando você estiver trabalhando em funcionalidades para nossas próximas branch a. Exclua sua branch local depois de ter feito um backup (se você ainda a tem localmente): - ```console - git checkout + ```console + git checkout - # exemplo: - # git checkout feat/add-numpy-video-question + # example: + # git checkout feat/add-numpy-video-question - git checkout -b + git checkout -b - # exemplo: - # git checkout -b backup-feat/add-numpy-video-question + # example: + # git checkout -b backup-feat/add-numpy-video-question - git branch -D - ``` + git branch -D + ``` b. Ou apenas faça um backup da sua branch pr (se você não a tem localmente): - ```console - git checkout -b origin/ + ```console + git checkout -b origin/ - # exemplo: - # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question - ``` + # example: + # git checkout -b backup-feat/add-numpy-video-question origin/feat/add-numpy-video-question + ``` -4. Comece do zero: +3. Comece do zero: ```console git checkout -b next-python-projects git cherry-pick ``` -5. Resolva quaisquer conflitos e limpe, instale testes +4. Resolva quaisquer conflitos e limpe, instale testes ```console npm run clean @@ -176,7 +176,7 @@ Quando você estiver trabalhando em funcionalidades para nossas próximas branch ``` -6. Se tudo estiver correto, faça um push ao PR +5. Se tudo estiver correto, faça um push ao PR ```console git push --force origin diff --git a/docs/i18n/portuguese/how-to-test-translations-locally.md b/docs/i18n/portuguese/how-to-test-translations-locally.md index bb396cfa2c..ea3350e796 100644 --- a/docs/i18n/portuguese/how-to-test-translations-locally.md +++ b/docs/i18n/portuguese/how-to-test-translations-locally.md @@ -143,7 +143,7 @@ Para os desafios em vídeo, você precisa fazer algumas alterações. Primeiro, ... ``` -Em seguida, adicione um id para o novo idioma para qualquer desafio em vídeo em um bloco auditado. Por exemplo, se `auditedCerts` em `all-langs.js` inclui `scientific-computing-with-python` para `dothraki`, você deve adicionar uma entrada em `dothraki` em `videoLocaleIds`. O frontmatter dever ter essa aparência: +Em seguida, adicione um id para o novo idioma para qualquer desafio em vídeo em um bloco auditado. Por exemplo, se `auditedCerts` em `all-langs.js` inclui `scientific-computing-with-python` para `dothraki`, você deve adicionar uma entrada em `dothraki` em `videoLocaleIds`. O frontmatter dever ter essa aparência: ```yml videoLocaleIds: diff --git a/docs/i18n/portuguese/how-to-use-docker-on-windows-home.md b/docs/i18n/portuguese/how-to-use-docker-on-windows-home.md index ff0cd138e7..115c26b508 100644 --- a/docs/i18n/portuguese/how-to-use-docker-on-windows-home.md +++ b/docs/i18n/portuguese/how-to-use-docker-on-windows-home.md @@ -12,4 +12,4 @@ Se você ver mensagens como bash: change_volumes_owner.sh: No such file or directory ``` -quando você usar `npm run docker:init`, esse é provavelmente o culpado. \ No newline at end of file +quando você usar `npm run docker:init`, esse é provavelmente o culpado. diff --git a/docs/i18n/portuguese/how-to-work-on-coding-challenges.md b/docs/i18n/portuguese/how-to-work-on-coding-challenges.md index e82786a334..229fdb42f6 100644 --- a/docs/i18n/portuguese/how-to-work-on-coding-challenges.md +++ b/docs/i18n/portuguese/how-to-work-on-coding-challenges.md @@ -290,7 +290,7 @@ Desafios devem ter um número mínimo de testes necessários para verificar que Nossa meta é comunicar o ponto que o desafio está tentando ensinar e testar se eles entenderam esse ponto. -Os testes do desafio podem usar bibliotecas Node.js e Chai.js. Se necessário, o código gerado pro usuário pode ser acessado na variável `code` também. Além disso, os objetos `__helpers` expõem várias funções que simplificam o processo de escrita dos testes. As funções disponíveis estão definidas em _client/src/utils/curriculum-helpers.ts_. +Os testes do desafio podem usar bibliotecas Node.js e Chai.js. Se necessário, o código gerado pro usuário pode ser acessado na variável `code` também. Além disso, os objetos `__helpers` expõem várias funções que simplificam o processo de escrita dos testes. As funções disponíveis estão definidas em _client/src/utils/curriculum-helpers.ts_. ## Formatação do código seed diff --git a/docs/i18n/portuguese/how-to-work-on-the-news-theme.md b/docs/i18n/portuguese/how-to-work-on-the-news-theme.md index dddf44d75e..eb20081c4e 100644 --- a/docs/i18n/portuguese/how-to-work-on-the-news-theme.md +++ b/docs/i18n/portuguese/how-to-work-on-the-news-theme.md @@ -84,6 +84,7 @@ Um truque muito legal é que você também pode criar modelos personalizados ún ```sh npm run zip ``` + ## Outras Referências e recursos ### Características do PostCSS utilizadas diff --git a/docs/i18n/portuguese/how-to-work-on-tutorials-that-use-coderoad.md b/docs/i18n/portuguese/how-to-work-on-tutorials-that-use-coderoad.md index bfc97bd62d..6a0c42d0df 100644 --- a/docs/i18n/portuguese/how-to-work-on-tutorials-that-use-coderoad.md +++ b/docs/i18n/portuguese/how-to-work-on-tutorials-that-use-coderoad.md @@ -1,6 +1,7 @@ This page describes how to contribute to the freeCodeCamp tutorials and projects that are completed using the CodeRoad VS Code extension. ## How the tutorials work + The freeCodeCamp tutorials that use CodeRoad each have their own repo under the freeCodeCamp GitHub organization. They all start with `learn-`. For example, `https://github.com/freeCodeCamp/learn-bash-by-building-a-boilerplate/`. Each tutorial repo has a `main` branch and a "version" branch, e.g. `v1.0.0`. @@ -20,11 +21,13 @@ In order to make changes to commits on a version branch, you would need to rebas ## How to contribute ### Prerequisites + Install the [CodeRoad CLI tools](https://www.npmjs.com/package/@coderoad/cli) with `npm install -g @coderoad/cli`. There have been some issues with the latest version. If `coderoad --version` doesn't work after installing, downgrade to `0.7.0` with `npm install -g @coderoad/cli@0.7.0`. ### Working on `main` + This set of instructions is for PRs that only make minor changes on `main` to **existing lessons**. That mainly consists of typo, grammar, hint, and instructional changes or fixes in the `TUTORIAL.md` file. For everything else, including adding or deleting lessons, follow the [working on a version branch instructions](#working-on-version-branch). You will not need to create a new version branch for this - you can create a PR following the instructions below. @@ -47,12 +50,14 @@ Follow these instructions to make a PR, keeping in mind that instructions usuall - Make a PR ### Testing changes on `main` + If you want to test your changes to `main` after using the above instructions, follow these instructions: - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on the new branch ### Reviewing PR's to `main` + If reviewing a PR that only changes `main` with instructional or grammar issues as described above, the changes in `TUTORIAL.md` should match the changes in `tutorial.json`. The `tutorial.json` file should not have changes to commit hashes, or step/level ids. Startup or level commands or file watchers likely should not be changed either. There are exceptions if there's an issue with a step, but they should be treated with more caution. @@ -60,6 +65,7 @@ The `tutorial.json` file should not have changes to commit hashes, or step/level Also, keep in mind that instructions usually use the lessons around them for context, so make sure they make sense. ### Working on version branch + > [!WARNING] > > Reminder: Never make or push changes to a version branch that is on one of the freeCodeCamp repos. Always create a new one @@ -86,10 +92,12 @@ Follow these instructions to create a new version: - Leave it here for reviewers ### Testing changes to a version branch + - Follow the instructions on the [rdb-alpha repo](https://github.com/freeCodeCamp/rdb-alpha) to run a container - Start the tutorial using the `tutorial.json` file on whatever fork the changes are on. Make sure to use the file on the `feat: version-X.X.Y` branch and not the `main` branch ### Pushing a new version + Before pushing a new version, view the new `feat/version-vX.X.Y` (will be merged to `main`) branch on the user's fork. Make sure there are additions to the `CHANGELOG.md` file that include the new changes, and the version in the two spots of `coderoad.yaml` matches the new version branch. If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` and `coderoad.yaml` files, have tested the changes using the instructions above, and want to push a new version of a tutorial: @@ -114,13 +122,17 @@ If you have write access to the freeCodeCamp repo, have verified the `CHANGELOG` - Finally, if any PRs for this version exists, close them ### How to revert to a previous version + - Create a new branch off the latest `main` with `git checkout -b revert/to-version-X.X.X` - Revert all commits on this branch up to and including the commit of the version after the one you want to revert to. For example, you may have commits that look like this: + ``` fix: typo release: version 1.0.1 fix: typo release: version 1.0.0 ``` + If you want to revert to v1.0.0, revert all the commits from `release: version 1.0.1` and after + - Create a PR. Give it a title of `revert: to version X.X.X`