Skip to content

Commit 8f66193

Browse files
authored
Merge branch 'source' into part5-zh-update
2 parents 8071f1c + 66d3788 commit 8f66193

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+1473
-1670
lines changed

src/content/0/en/part0a.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,7 @@ Despite changes *all the submitted exercises remain valid*, and the course can b
332332
333333
Recent major changes
334334
335+
- Part 5 (21st August, 2025): React updated to version 19. PropTypes and forwardRef are no longer used. ESLint configurations updated
335336
- Part 4 (13th August, 2025): Express updated to version 5 and the express-async-errors library removed from part 4b
336337
- Part 9 (28th August, 2024): Zod library for validating request body type
337338
- Part 3 (20th June, 2024): ESLint configurations updated
@@ -382,7 +383,7 @@ Install a sensible text editor that supports web development. [Visual Studio Cod
382383
383384
Don't code with nano, Notepad or Gedit. NetBeans isn't very good for web development either. It is also rather heavy in comparison to [Visual Studio Code](https://code.visualstudio.com/).
384385
385-
Also, install [Node.js](https://nodejs.org/en/). The material is being updated to Node version v22. Parts 0-4 are made using Node version 22.3.0, part 10 using version 20.11.0, and the remaining parts using version 18.13.0. Always use at least as recent a Node version. Installation instructions can be found on the [Node.js website](https://nodejs.org/en/download/package-manager/).
386+
Also, install [Node.js](https://nodejs.org/en/). The material is being updated to Node version v22. Parts 0-5 are made using Node version 22.3.0, part 10 using version 20.11.0, and the remaining parts using version 18.13.0. Always use at least as recent a Node version. Installation instructions can be found on the [Node.js website](https://nodejs.org/en/download/package-manager/).
386387
387388
Node package manager [npm](https://www.npmjs.com/get-npm) will be automatically installed with Node.js. We will be actively using npm throughout the course. Node also comes with [npx](https://www.npmjs.com/package/npx), which we'll need a few times.
388389

src/content/0/en/part0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ The mechanism of invoking event handlers is very common in JavaScript. Event han
280280
281281
We can think of HTML pages as implicit tree structures.
282282
283-
<pre>
283+
```
284284
html
285285
head
286286
link
@@ -296,7 +296,7 @@ html
296296
form
297297
input
298298
input
299-
</pre>
299+
```
300300
301301
The same treelike structure can be seen on the console's <i>Elements</i> tab.
302302

src/content/0/es/part0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ El mecanismo de invocación de controladores de eventos es muy común en JavaScr
280280
281281
Podemos pensar en las páginas HTML como estructuras de árbol implícitas.
282282
283-
<pre>
283+
```
284284
html
285285
head
286286
link
@@ -296,7 +296,7 @@ html
296296
form
297297
input
298298
input
299-
</pre>
299+
```
300300
301301
La misma estructura arbórea se puede ver en la pestaña de la consola <i>Elements (Elementos)</i>.
302302

src/content/0/fi/osa0a.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,7 @@ Kurssilla ei ole enää vuosittaisia versiota. Kurssi on siis käynnissä koko a
275275
Muutoksista huolimatta <i>kaikki jo tehdyt palautukset säilyvät voimassa</i>, eli voit jatkaa kurssia päivityksistä huolimatta normaaliin tapaan.
276276

277277
Viimeaikaisia isompia muutoksia
278+
- Osa 5 (21.8.2025): React päivitetty versioon 19. Proptypes ja forwardRef poistuneet käytöstä. Eslint-konfiguraatiot päivitetty
278279
- Osa 4 (13.8.2025): Express päivitetty versioon 5 ja kirjasto express-async-errors poistettu osasta 4b
279280
- Osa 9 (28.8.2024): Zod-kirjasto datan validointiin
280281
- Osa 3 (20.6.2024): ESLint-konfiguraatiot päivitetty
@@ -325,7 +326,7 @@ Asenna myös joku järkevä web-devausta tukeva tekstieditori. Enemmän kuin suo
325326

326327
Älä koodaa nanolla, Notepadilla tai Geditillä. Myöskään NetBeans ei ole omimmillaan web-devauksessa, ja se on myös turhan raskas verrattuna esim. Visual Studio Codeen.
327328

328-
Asenna koneeseesi heti myös [Node.js](https://nodejs.org/en/). Materiaalia ollaan päivittämässä Noden versioon v22. Osat 0-4 on tehty käyttäen Noden versiota 22.3.0, osa 10 käyttäen versiota 20.11.0 ja loput osat käyttäen versiota 18.13.0. Käytä aina vähintään yhtä tuoretta Node-versiota. Asennusohjeita on [Node.js:n sivuilla](https://nodejs.org/en/download/package-manager/).
329+
Asenna koneeseesi heti myös [Node.js](https://nodejs.org/en/). Materiaalia ollaan päivittämässä Noden versioon v22. Osat 0-5 on tehty käyttäen Noden versiota 22.3.0, osa 10 käyttäen versiota 20.11.0 ja loput osat käyttäen versiota 18.13.0. Käytä aina vähintään yhtä tuoretta Node-versiota. Asennusohjeita on [Node.js:n sivuilla](https://nodejs.org/en/download/package-manager/).
329330

330331
Noden myötä koneelle asentuu myös [npm](https://www.npmjs.com/get-npm) (alunperin lyhennelmä <i>Node Package Manager</i> ‑nimelle), jota tulemme tarvitsemaan kurssin aikana aktiivisesti. Tuoreen Noden kera asentuu myös [npx](https://www.npmjs.com/package/npx), jota tarvitaan myös muutaman kerran.
331332

src/content/0/fi/osa0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ Tapahtumankäsittelijöihin liittyvä mekanismi koodin suorittamiseen on JavaScr
278278
279279
Voimme ajatella, että HTML-sivut muodostavat implisiittisen puurakenteen
280280
281-
<pre>
281+
```
282282
html
283283
head
284284
link
@@ -294,7 +294,7 @@ html
294294
form
295295
input
296296
input
297-
</pre>
297+
```
298298
299299
Sama puumaisuus on nähtävissä konsolin välilehdellä </i>Elements</i>:
300300

src/content/0/fr/part0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ Ce mécanisme consistant à appeler des gestionnaires d'événements est très c
275275
276276
Nous pouvons considérer les pages HTML comme des arborescences implicites.
277277
278-
<pre>
278+
```
279279
html
280280
head
281281
link
@@ -291,7 +291,7 @@ html
291291
form
292292
input
293293
input
294-
</pre>
294+
```
295295
296296
La même structure arborescente peut être vue sur l'onglet <i>Éléments</i> de la console.
297297

src/content/0/ptbr/part0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ O mecanismo de chamada de gerenciadores de eventos é muito comum em JavaScript.
280280
281281
Podemos pensar em páginas HTML como estruturas implícitas de uma árvore.
282282
283-
<pre>
283+
```
284284
html
285285
head
286286
link
@@ -296,7 +296,7 @@ html
296296
form
297297
input
298298
input
299-
</pre>
299+
```
300300
301301
A mesma estrutura de árvore pode ser vista na guia <i>Elementos</i> do console.
302302

src/content/0/zh/part0b.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,7 @@ xhttp.onreadystatechange = function() {
337337
<!-- We can think of HTML-pages as implicit tree structures.-->
338338
我们可以将 html 页面看作隐式树结构。
339339
340-
<pre>
340+
```
341341
html
342342
head
343343
link
@@ -353,7 +353,7 @@ html
353353
form
354354
input
355355
input
356-
</pre>
356+
```
357357
<!-- The same treelike structure can be seen on the console tab <i>Elements</i>.-->
358358
同样的树状结构可以在控制台的<i>Elements元素</i>选项卡上看到。
359359

src/content/11/en/part11c.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Let's define some things we **want** in this hypothetical deployment system too:
5252
- We would like it to be fast
5353
- We'd like to have no downtime during the deployment (this is distinct from the requirement we have for handling user requests just before/during the deployment).
5454

55-
Next we will have three sets of exercises for automating the deployment with GitHub Actions, one for [Fly.io](https://fly.io/), another one for [Render](https://render.com/). The process of deployment is always specific to the particular cloud provider, so you can also do both the exercise sets if you want to see the differences on how these services work with respect to deployments.
55+
Next we will have two sets of exercises for automating the deployment with GitHub Actions, one for [Fly.io](https://fly.io/), another one for [Render](https://render.com/). The process of deployment is always specific to the particular cloud provider, so you can also do both the exercise sets if you want to see the differences on how these services work with respect to deployments.
5656

5757
### Has the app been deployed?
5858

src/content/2/en/part2a.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -620,15 +620,15 @@ Define a component responsible for formatting a single course called <i>Course</
620620

621621
The component structure of the application can be, for example, the following:
622622

623-
<pre>
623+
```
624624
App
625625
Course
626626
Header
627627
Content
628628
Part
629629
Part
630630
...
631-
</pre>
631+
```
632632

633633
Hence, the <i>Course</i> component contains the components defined in the previous part, which are responsible for rendering the course name and its parts.
634634

0 commit comments

Comments
 (0)