feat: add 'back/front end' in curriculum (#42596)

* chore: rename APIs and Microservices to include "Backend" (#42515)

* fix typo

* fix typo

* undo change

* Corrected grammar mistake

Corrected a grammar mistake by removing a comma.

* change APIs and Microservices cert title

* update title

* Change APIs and Microservices certi title

* Update translations.json

* update title

* feat(curriculum): rename apis and microservices cert

* rename folder structure

* rename certificate

* rename learn Markdown

* apis-and-microservices -> back-end-development-and-apis

* update backend meta

* update i18n langs and cypress test

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>

* fix: add development to front-end libraries (#42512)

* fix: added-the-word-Development-to-front-end-libraries

* fix/added-the-word-Development-to-front-end-libraries

* fix/added-word-development-to-front-end-libraries-in-other-related-files

* fix/added-the-word-Development-to-front-end-and-all-related-files

* fix/removed-typos-from-last-commit-in-index.md

* fix/reverted-changes-that-i-made-to-dependecies

* fix/removed xvfg

* fix/reverted changes that i made to package.json

* remove unwanted changes

* front-end-development-libraries changes

* rename backend certSlug and README

* update i18n folder names and keys

* test: add legacy path redirect tests

This uses serve.json from the client-config repo, since we currently use
that in production

* fix: create public dir before moving serve.json

* fix: add missing script

* refactor: collect redirect tests

* test: convert to cy.location for stricter tests

* rename certificate folder to 00-certificates

* change crowdin config to recognise new certificates location

* allow translations to be used

Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>

* add forwards slashes to path redirects

* fix cypress path tests again

* plese cypress

* fix: test different challenge

Okay so I literally have no idea why this one particular challenge
fails in Cypress Firefox ONLY. Tom and I paired and spun a full build
instance and confirmed in Firefox the page loads and redirects as
expected. Changing to another bootstrap challenge passes Cypress firefox
locally. Absolutely boggled by this.

AAAAAAAAAAAAAAA

* fix: separate the test

Okay apparently the test does not work unless we separate it into
a different `it` statement.

>:( >:( >:( >:(

Co-authored-by: Sujal Gupta <55016909+heysujal@users.noreply.github.com>
Co-authored-by: Noor Fakhry <65724923+NoorFakhry@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com>
This commit is contained in:
Shaun Hamilton
2021-08-14 03:57:13 +01:00
committed by GitHub
parent 4df2a0c542
commit c2a11ad00d
1215 changed files with 790 additions and 449 deletions

View File

@ -21,7 +21,13 @@ As an example, if you wanted to enable Dothraki as a language, your `all-langs.j
```js
const availableLangs = {
client: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki'],
curriculum: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki']
curriculum: [
'english',
'espanol',
'chinese',
'chinese-traditional',
'dothraki'
]
};
const i18nextCodes = {
@ -29,7 +35,7 @@ const i18nextCodes = {
espanol: 'es',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
const langDisplayNames = {
@ -37,7 +43,7 @@ const langDisplayNames = {
espanol: 'Español',
chinese: '中文(简体字)',
'chinese-traditional': '中文(繁體字)',
'dothraki': 'Dothraki',
dothraki: 'Dothraki'
};
const langCodes = {
@ -45,7 +51,7 @@ const langCodes = {
espanol: 'es-419',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
```
@ -76,11 +82,11 @@ const algoliaIndices = {
dothraki: {
name: 'news',
searchPage: 'https://www.freecodecamp.org/news/search/'
},
}
};
```
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the *dashed names* for the certifications that have been translated. Refer to the existing data for those dashed names.
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the _dashed names_ for the certifications that have been translated. Refer to the existing data for those dashed names.
Continuing the work to enable Dothraki - we have translated the first three certifications:
@ -93,23 +99,23 @@ const auditedCerts = {
chinese: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'chinese-traditional': [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'dothraki': [
dothraki: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries'
'front-end-development-libraries'
]
};
```
@ -130,4 +136,4 @@ Once you have the files, you will need to place them in the correct directory. F
Once these are in place, you should be able to run `npm run develop` to view your translated version of freeCodeCamp.
> [!ATTENTION]
> While you may perform translations locally for the purpose of testing, we remind everyone that translations should *not* be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.
> While you may perform translations locally for the purpose of testing, we remind everyone that translations should _not_ be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.

View File

@ -20,7 +20,13 @@ As an example, if you wanted to enable Dothraki as a language, your `all-langs.j
```js
const availableLangs = {
client: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki'],
curriculum: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki']
curriculum: [
'english',
'espanol',
'chinese',
'chinese-traditional',
'dothraki'
]
};
const i18nextCodes = {
@ -28,7 +34,7 @@ const i18nextCodes = {
espanol: 'es',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
const langDisplayNames = {
@ -36,7 +42,7 @@ const langDisplayNames = {
espanol: 'Español',
chinese: '中文(简体字)',
'chinese-traditional': '中文(繁體字)',
'dothraki': 'Dothraki',
dothraki: 'Dothraki'
};
const langCodes = {
@ -44,7 +50,7 @@ const langCodes = {
espanol: 'es-419',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
```
@ -75,11 +81,11 @@ const algoliaIndices = {
dothraki: {
name: 'news',
searchPage: 'https://www.freecodecamp.org/news/search/'
},
}
};
```
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the *dashed names* for the certifications that have been translated. Refer to the existing data for those dashed names.
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the _dashed names_ for the certifications that have been translated. Refer to the existing data for those dashed names.
Continuing the work to enable Dothraki - we have translated the first three certifications:
@ -92,23 +98,23 @@ const auditedCerts = {
chinese: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'chinese-traditional': [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'dothraki': [
dothraki: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries'
'front-end-development-libraries'
]
};
```
@ -128,4 +134,4 @@ Once you have the files, you will need to place them in the correct directory. F
Once these are in place, you should be able to run `npm run develop` to view your translated version of freeCodeCamp.
> [!ATTENTION] While you may perform translations locally for the purpose of testing, we remind everyone that translations should *not* be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.
> [!ATTENTION] While you may perform translations locally for the purpose of testing, we remind everyone that translations should _not_ be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.

View File

@ -20,7 +20,13 @@ As an example, if you wanted to enable Dothraki as a language, your `all-langs.j
```js
const availableLangs = {
client: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki'],
curriculum: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki']
curriculum: [
'english',
'espanol',
'chinese',
'chinese-traditional',
'dothraki'
]
};
const i18nextCodes = {
@ -28,7 +34,7 @@ const i18nextCodes = {
espanol: 'es',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
const langDisplayNames = {
@ -36,7 +42,7 @@ const langDisplayNames = {
espanol: 'Español',
chinese: '中文(简体字)',
'chinese-traditional': '中文(繁體字)',
'dothraki': 'Dothraki',
dothraki: 'Dothraki'
};
const langCodes = {
@ -44,7 +50,7 @@ const langCodes = {
espanol: 'es-419',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
```
@ -75,11 +81,11 @@ const algoliaIndices = {
dothraki: {
name: 'news',
searchPage: 'https://www.freecodecamp.org/news/search/'
},
}
};
```
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the *dashed names* for the certifications that have been translated. Refer to the existing data for those dashed names.
Next, you will need to tell the client which certifications are translated, and which are still in English. Open the `utils/is-audited.js` file. Within the `auditedCerts`, add a new key with your language's `availableLangs` value. Assign the value of that key to an array containing the _dashed names_ for the certifications that have been translated. Refer to the existing data for those dashed names.
Continuing the work to enable Dothraki - we have translated the first three certifications:
@ -92,23 +98,23 @@ const auditedCerts = {
chinese: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'chinese-traditional': [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'dothraki': [
dothraki: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries'
'front-end-development-libraries'
]
};
```
@ -128,4 +134,4 @@ Once you have the files, you will need to place them in the correct directory. F
Once these are in place, you should be able to run `npm run develop` to view your translated version of freeCodeCamp.
> [!ATTENTION] While you may perform translations locally for the purpose of testing, we remind everyone that translations should *not* be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.
> [!ATTENTION] While you may perform translations locally for the purpose of testing, we remind everyone that translations should _not_ be submitted through GitHub and should only be done through Crowdin. Be sure to reset your local codebase after you are done testing.

View File

@ -20,7 +20,13 @@ Per esempio, se vuoi attivare la lingua Dothraki, il tuo oggetto `all-langs.js`
```js
const availableLangs = {
client: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki'],
curriculum: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki']
curriculum: [
'english',
'espanol',
'chinese',
'chinese-traditional',
'dothraki'
]
};
const i18nextCodes = {
@ -28,7 +34,7 @@ const i18nextCodes = {
espanol: 'es',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
const langDisplayNames = {
@ -36,7 +42,7 @@ const langDisplayNames = {
espanol: 'Español',
chinese: '中文(简体字)',
'chinese-traditional': '中文(繁體字)',
'dothraki': 'Dothraki',
dothraki: 'Dothraki'
};
const langCodes = {
@ -44,7 +50,7 @@ const langCodes = {
espanol: 'es-419',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
```
@ -75,11 +81,11 @@ const algoliaIndices = {
dothraki: {
name: 'news',
searchPage: 'https://www.freecodecamp.org/news/search/'
},
}
};
```
Quindi, devi dire al client quali certificazioni sono tradotte e quali sono ancora in inglese. Apri il file `utils/is-audited.js`. Aggiungi a `auditedCerts` una nuova chiave con il valore della tua lingua in `availableLangs`. Assegna a quella chiave un array contenente i *nomi con trattino* per le certificazioni che sono state tradotte. Riferisciti ai dati esistenti per i nomi con trattino.
Quindi, devi dire al client quali certificazioni sono tradotte e quali sono ancora in inglese. Apri il file `utils/is-audited.js`. Aggiungi a `auditedCerts` una nuova chiave con il valore della tua lingua in `availableLangs`. Assegna a quella chiave un array contenente i _nomi con trattino_ per le certificazioni che sono state tradotte. Riferisciti ai dati esistenti per i nomi con trattino.
Continuando il lavoro per attivare Dothraki, abbiamo tradotto le prime tre certificazioni:
@ -92,23 +98,23 @@ const auditedCerts = {
chinese: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'chinese-traditional': [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'dothraki': [
dothraki: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries'
'front-end-development-libraries'
]
};
```
@ -128,4 +134,4 @@ Una volta che avrai i file, li dovrai mettere nelle cartelle giuste. Per le sfid
Una volta che questi saranno in posizione, dovresti essere in grado di eseguire `npm run develop` per vedere la versione tradotta di freeCodeCamp.
> [!ATTENTION] Anche se puoi farei delle traduzioni localmente per i test, ricordiamo che le traduzioni *non* devono essere inviate attraverso GitHub ma solo tramite Crowdin. Assicurati di resettare il tuo codebase locale dopo che avrai finito con i test.
> [!ATTENTION] Anche se puoi farei delle traduzioni localmente per i test, ricordiamo che le traduzioni _non_ devono essere inviate attraverso GitHub ma solo tramite Crowdin. Assicurati di resettare il tuo codebase locale dopo che avrai finito con i test.

View File

@ -15,12 +15,18 @@ Primeiro, visite o arquivo `config/i18n/all-langs.js` para adicionar o idioma à
- `langDisplayNames`: esses são os nomes dos idiomas que aparecerão para a seleção no menu de navegação.
- `langCodes`: esses são os códigos de idiomas usados para formatar datas e números. Esses deverão ser códigos Unicode CLDR ao invés de códigos ISO.
Como um exemplo, se você tivesse que habilitar o idioma Dothraki como seu idioma, os objetos `all-langs.js` devem ficar assim:
Como um exemplo, se você tivesse que habilitar o idioma Dothraki como seu idioma, os objetos `all-langs.js` devem ficar assim:
```js
const availableLangs = {
client: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki'],
curriculum: ['english', 'espanol', 'chinese', 'chinese-traditional', 'dothraki']
curriculum: [
'english',
'espanol',
'chinese',
'chinese-traditional',
'dothraki'
]
};
const i18nextCodes = {
@ -28,7 +34,7 @@ const i18nextCodes = {
espanol: 'es',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
const langDisplayNames = {
@ -36,7 +42,7 @@ const langDisplayNames = {
espanol: 'Español',
chinese: '中文(简体字)',
'chinese-traditional': '中文(繁體字)',
'dothraki': 'Dothraki',
dothraki: 'Dothraki'
};
const langCodes = {
@ -44,7 +50,7 @@ const langCodes = {
espanol: 'es-419',
chinese: 'zh',
'chinese-traditional': 'zh-Hant',
'dothraki': 'mis',
dothraki: 'mis'
};
```
@ -75,11 +81,11 @@ const algoliaIndices = {
dothraki: {
name: 'news',
searchPage: 'https://www.freecodecamp.org/news/search/'
},
}
};
```
Depois, você precisará informar ao client quais certificações estão traduzidas e quais ainda estão em inglês. Abra o arquivo `utils/is-audited.js`. Dentro de `auditedCerts`, adicione uma nova chave com o valor de `availableLangs` de seu idioma. Atribua o valor daquela chave a um array que contém os *nomes hifenizados* para as certificações foram traduzidas. Consulte os dados existentes para aqueles nomes hifenizados.
Depois, você precisará informar ao client quais certificações estão traduzidas e quais ainda estão em inglês. Abra o arquivo `utils/is-audited.js`. Dentro de `auditedCerts`, adicione uma nova chave com o valor de `availableLangs` de seu idioma. Atribua o valor daquela chave a um array que contém os _nomes hifenizados_ para as certificações foram traduzidas. Consulte os dados existentes para aqueles nomes hifenizados.
Dando continuidade ao trabalho para habilitar o idioma Dothraki traduzimos as três primeiras certificações:
@ -92,23 +98,23 @@ const auditedCerts = {
chinese: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'chinese-traditional': [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries',
'front-end-development-libraries',
'data-visualization',
'apis-and-microservices',
'back-end-development-and-apis',
'quality-assurance'
],
'dothraki': [
dothraki: [
'responsive-web-design',
'javascript-algorithms-and-data-structures',
'front-end-libraries'
'front-end-development-libraries'
]
};
```
@ -128,4 +134,4 @@ Quando tiver os arquivos em mãos, você precisará colocá-los no diretório co
Quando estes arquivos estiverem no local certo, você deve poder usar `npm run develop` para ver sua versão traduzida do freeCodeCamp.
> [!ATTENTION] Embora você possa realizar as traduções localmente para fins de teste, lembramos a todos que as traduções *não* devem ser enviadas pelo GitHub e devem ser feitas somente pelo Crowdin. Certifique-se de reiniciar sua base de código local após realizar os testes.
> [!ATTENTION] Embora você possa realizar as traduções localmente para fins de teste, lembramos a todos que as traduções _não_ devem ser enviadas pelo GitHub e devem ser feitas somente pelo Crowdin. Certifique-se de reiniciar sua base de código local após realizar os testes.