Skip to content

Commit 175aed9

Browse files
committed
part 9
1 parent 5d1af6f commit 175aed9

7 files changed

Lines changed: 50 additions & 17 deletions

File tree

src/components/InfoBanner.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,14 @@ const InfoBanner = ({ visible, onHide }) => {
4747
<div style={textStyle}>
4848
<div style={{ marginBottom: 20 }}>
4949
<div style={{ marginBottom: 10 }}>
50-
Material of Part 13 has been moved to <a style={linkStyle} href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-relational-databases">https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-relational-databases</a>
50+
Material of Part 9 has been moved to <a style={linkStyle}
51+
href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript"
52+
>
53+
https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript
54+
</a>
5155
</div>
5256
<div style={{ marginBottom: 10 }}>
53-
The content and exercises are still same, there is a change how exercises are submitted.
54-
</div>
55-
<div>
56-
The old content is still found <a style={linkStyle} href="https://github.com/fullstack-hy2020/fullstack-hy2020.github.io/tree/7599b17c02b056fcad4f12d8708f0e07980b7564/src/content/13">here</a>.
57+
There are some notable changes in the content. If you have already started this part, and advanced beyond the first exercises, you may continue following the old material, it shall remain here until 1st May 2026.
5758
</div>
5859
</div>
5960
</div>

src/components/layout.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import Footer from './Footer/Footer';
1212
import PropTypes from 'prop-types';
1313
import SkipToContent from './SkipToContent/SkipToContent';
1414

15-
const BANNER_TO_KEY = 'part_13_changes';
15+
const BANNER_TO_KEY = 'part_09_changes';
1616
const BANNER2_TO_KEY = 'part_12_changes';
1717
const BANNER3_TO_KEY = 'part_11_changes';
1818

@@ -29,7 +29,7 @@ const Layout = (props) => {
2929
useEffect(() => {
3030
const key = localStorage.getItem(BANNER_TO_KEY);
3131
if (!key) {
32-
const relevant = window.location.href.includes('en/part13') || window.location.href.includes('osa13');
32+
const relevant = window.location.href.includes('en/part9') || window.location.href.includes('osa9');
3333
setVisible(relevant);
3434
}
3535
}, []);

src/content/0/en/part0a.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -172,18 +172,19 @@ Material of part 13 has been moved to <a href="https://courses.mooc.fi/org/uh-cs
172172
173173
Please note that if you do the "base course" with 6 or 7 credits, you need separate registrations for the extra credits, see [Parts and completion](/en/part0/general_info#parts-and-completion) for more.
174174
175-
#### How to study the course – instructions in a nutshell: parts 8-10
175+
#### How to study the course – instructions in a nutshell: parts 8 and 10
176176
177-
- Do the exercises. The exercises are submitted through GitHub and marking them as done on the submission system. Note that parts 8-10 have a separate instance in the submission system
177+
- Do the exercises. The exercises are submitted through GitHub and marking them as done on the submission system. Note that parts 8 and 10 have a separate instance in the submission system
178178
- [The course certificate](/en/part0/general_info#course-certificate) will be available in the submission system
179179
- If you want to get University of Helsinki credits
180180
- Enroll in the course. You can enroll in each part through the link in the course material ([Parts and completion](/en/part0/general_info#parts-and-completion)). Enroll in each part separately.
181181
- Mark the part completed in the submission system. Read more [here](/en/part0/general_info#how-to-get-your-credits)
182182
183-
#### How to study the course – instructions in a nutshell: parts 11-13
183+
#### How to study the course – instructions in a nutshell: parts 9 and 11-13
184184
185185
All practicalities are explained in the new course pages
186186
187+
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript">part 9</a>
187188
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-continuous-integration">part 11</a>
188189
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-containers">part 12</a>
189190
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-relational-databases">part 13</a>
@@ -329,7 +330,7 @@ Despite changes *all the submitted exercises remain valid*, and the course can b
329330
330331
Recent major changes
331332
332-
- Parts 11-13 (March 2026): content updated and material moved to new platform
333+
- Parts 9, 11-13 (March 2026): content updated and material moved to new platform
333334
- Part 8: (3th January 2026) Apollo Server updated to v5. Apollo Client updated to v4. Refactoring backend code moved to part8c. Lot's of other small improvements.
334335
- Part 6 (12th October 2025): Jest replaced with Vitest. Axios replaced with Fetch API
335336
- Part 5 (21st August, 2025): React updated to version 19. PropTypes and forwardRef are no longer used. ESLint configurations updated

src/content/0/fi/osa0a.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,17 +123,18 @@ Materiaali siirretty osoitteeseen <a href="https://courses.mooc.fi/org/uh-cs/cou
123123
- Tee kurssikoe palautusjärjestelmässä, lue lisää [täältä](/osa0/yleista#kurssikoe).
124124
- Pyydä suoritusmerkintää palautussovelluksessa. Lue lisää [täältä](/osa0/yleista#suoritusmerkinnan-pyytaminen)
125125

126-
#### Kurssin suoritusohjeet pähkinänkuoressa (Osat 6–10)
126+
#### Kurssin suoritusohjeet pähkinänkuoressa (Osat 6–8 ja 10)
127127

128-
- Tee tehtävät. Palauta vastauksesi palautussovelluksen kautta. Huomaa, että osat 8–11 palautetaan palautussovelluksessa erillisiin kurssi-instansseihin.
128+
- Tee tehtävät. Palauta vastauksesi palautussovelluksen kautta. Huomaa, että osat 8 ja 10 palautetaan palautussovelluksessa erillisiin kurssi-instansseihin.
129129

130130
- Ilmoittaudu kurssille. Pääset ilmoittautumaan kurssimateriaalista (ks. [Osat ja suorittaminen](/osa0/yleista#osat-ja-suorittaminen)) löytyvän ilmoittautumislinkin kautta. Ilmoittaudu erikseen kuhunkin osaan.
131131
- Pyydä suoritusmerkintää palautussovelluksessa. Lue lisää [täältä](/osa0/yleista#suoritusmerkinnan-pyytaminen)
132132

133-
#### Kurssin suoritusohjeet pähkinänkuoressa (Osat 11-13)
133+
#### Kurssin suoritusohjeet pähkinänkuoressa (Osat 9 ja 11-13)
134134

135135
Käytännöt selviävät osien materiaalista:
136136

137+
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript">osa 9</a>
137138
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-continuous-integration">osa 11</a>
138139
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-containers">osa 12</a>
139140
- <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-relational-databases">osa 13</a>
@@ -220,6 +221,7 @@ Arvosana siirtyy Helsingin yliopiston opintorekisteriin Sisuun ja [Opintopolkuun
220221
Kun suoritusmerkintä on kirjattu, näet palautussovelluksessa tekstin
221222

222223
> <i>University credits registered, see the course page how to get a transcript if you need one</i>
224+
223225
### Miten saan selville Helsingin yliopiston opiskelijanumeroni?
224226

225227
Kun ilmoittaudut ensimmäistä kertaa Avoimen yliopiston kautta jollekin kurssille, sinulle luodaan Helsingin yliopiston opiskelijanumero. <i>**Varmista siis että olet ilmoittautunut kurssille, ennen kuin alat selvittää opiskelijanumeroasi.**</i>
@@ -272,7 +274,7 @@ Kurssilla ei ole vuosittaisia versiota. Kurssi on siis käynnissä koko ajan. Jo
272274
Muutoksista huolimatta <i>kaikki jo tehdyt palautukset säilyvät voimassa</i>, eli voit jatkaa kurssia päivityksistä huolimatta normaaliin tapaan.
273275

274276
Viimeaikaisia isompia muutoksia
275-
- Osat 11-13 (maaliskuu 2026): sisältö päivitetty ja materiaali siirretty uuteen osoitteeseen
277+
- Osat 9 ja 11-13 (maaliskuu 2026): sisältö päivitetty ja materiaali siirretty uuteen osoitteeseen
276278
- Osa 8: (3.1.2026) Apollo Server päivitetty versioon v5. Apollo Client päivitetty versioon v4. Backend-koodin refaktorointi siirretty osaan 8c. Lukuisia muita pieniä parannuksia.
277279
- Osa 6 (12.10.2025): Jest korvattu Vitestillä. Axios korvattu Fetch API:lla.
278280
- Osa 5 (21.8.2025): React päivitetty versioon 19. Proptypes ja forwardRef poistuneet käytöstä. Eslint-konfiguraatiot päivitetty

src/content/9/en/part9.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,24 @@ part: 9
44
lang: en
55
---
66

7+
<div class="intro warning">
8+
9+
Note that the material of Part 9 has been moved to <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript">
10+
https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript</a>
11+
12+
There are some notable changes in the content. If you have already started this part, and advanced beyond the first exercises, you may continue following the old material, it shall remain here until 1st May 2026.
13+
14+
</div>
15+
716
<div class="intro">
817

918
This part is all about TypeScript: an open-source typed superset of JavaScript developed by Microsoft that compiles to plain JavaScript.
1019

20+
There are some notable changes in the content. If you have already started this part, and advanced beyond the first exercises, you may continue following the old material, it shall remain here until 1st May 2026.
21+
1122
In this part, we will be using the tools previously introduced to build end-to-end features to an existing ecosystem, with predefined linters and an existing codebase, while writing TypeScript. After doing this part, you should be able to understand, develop and configure projects using TypeScript.
1223

1324
This part is created by [Tuomo Torppa](https://www.linkedin.com/in/tuomotorppa), [Tuukka Peuraniemi](https://www.linkedin.com/in/tuukkapeuraniemi/) and [Jani Rapo](https://www.linkedin.com/in/jani-rapo-5520817b/), the awesome developers of [Terveystalo](https://www.terveystalo.com/fi/Yritystietoa/Terveystalo-tyontantajana/Digital-Health/), the largest private healthcare service provider in Finland. Terveystalo’s nationwide network covers 300 locations across Finland. The clinic network is supplemented by 24/7 digital services.
1425

15-
<i>Part updated 28th August 2024</i>
16-
- <i>Zod library for validating request body type</i>
1726

1827
</div>

src/content/9/fi/osa9.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ part: 9
44
lang: fi
55
---
66

7+
8+
9+
<div class="intro warning">
10+
11+
Huomaa, että osan 9 materiaali on siirretty osoitteeseen <a href="https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript">
12+
https://courses.mooc.fi/org/uh-cs/courses/full-stack-open-typescript</a>
13+
14+
Sisällössä on joitakin merkittäviä muutoksia. Jos olet jo aloittanut tämän osan ja edennyt ensimmäisten tehtävien ohi, voit jatkaa vanhan materiaalin mukaan — se säilyy täällä 1. toukokuuta 2026 asti.
15+
16+
</div>
17+
718
<div class="intro">
819

920
Kurssin yhdeksäs, TypeScriptiä käsittelevä osa löytyy [englanninkielisestä kurssimateriaalista](/en/part9).

src/templates/ContentTemplate.scss

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,15 @@ pre[class*='language-'] {
178178
text-shadow: none;
179179
}
180180

181+
.warning {
182+
color: #5a4000;
183+
background-color: #fff3cd;
184+
border: 1px solid #ffc107;
185+
padding: 1em;
186+
border-radius: 4px;
187+
margin-bottom: 1rem;
188+
}
189+
181190
.arrow-go-up {
182191
width: 36px;
183192
height: 36px;

0 commit comments

Comments
 (0)