This repository contains solutions to exercises provided in the Full Stack Open 2022 given at the University of Helsinki.
-
0.1: HTML
Review the basics of HTML by reading this tutorial from Mozilla: HTML tutorial. -
0.2: CSS
Review the basics of CSS by reading this tutorial from Mozilla: CSS tutorial. -
0.3: HTML forms
Learn about the basics of HTML forms by reading Mozilla's tutorial Your first form. -
0.4: New note
Seepart0/0.4_New_Note_diagram.pdf
-
0.5: Single page app
Seepart0/0.4_Single_Page_app_diagram.pdf
-
0.6: New note
Seepart0/0.6_New_Note_diagram.pdf
-
1.1: course information, step1
See commit ccec7e0 -
1.2: course information, step2
See commit 89c4293 -
1.3: course information, step3
See commit 3ee1e74 -
1.4: course information, step4
See commit 3be02e7 -
1.5: course information, step5
See commit e88a27a -
1.6: unicafe, step1
See commit bfacdab -
1.7: unicafe, step2
See commit 14dbaec -
1.8: unicafe, step3
See commit 2e5a0da -
1.9: unicafe, step4
See commit a526efe -
1.10: unicafe, step5
See commit e34fd62 -
1.11: unicafe, step6
See commit 6ebd1b1 -
1.12: anecdotes, step1
See commit b187fe7 -
1.13: anecdotes, step2
See commit a48f76d -
1.14: anecdotes, step3
See commit 5409fe0
-
2.1: Course information, step6
See commit b2cc7e0 -
2.2-2.3: Course information, step7-8
See commit 264a0cd -
2.4: Course information, step9
See commit 85b0e63 -
2.5: separate module
See commit 43bd74d -
2.6: The Phonebook step1
See commit b7400ed -
2.7: The Phonebook step3
See commit 4661653 -
2.8: The Phonebook step3
See commit fd44608 -
2.9: The Phonebook step4
See commit 1939a2d -
2.10: The Phonebook step5
See commit 07ab30a -
2.11: The Phonebook step6
See commit 803d892 -
2.12*: Data for countries step1
See commit 5042dd2 -
2.13*: Data for countries step2
See commit d81d6e8 -
2.14*: Data for countries step3
See commit e9381ac -
2.15-16: The Phonebook step7-8
See commit 32c4c3d (commit message is incorrect...) -
2.17: The Phonebook step9
See commit 5cd7bd6 (commit message is incorrect...) -
2.18*: The Phonebook step10
See commit 97274ca (commit message is incorrect...) -
2.19: The Phonebook step11
See commit 55b23bc (commit message is incorrect...) -
2.20*: The Phonebook step12
See commit 5f226a1 (commit message is incorrect...)
See part3 repo
-
4.1: Blog list, step1
See commit 0cfa214 -
4.2: Blog list, step2
See commit 4121d80 -
4.3: helper functions and unit tests, step1
See commit 7cc7b59 (commit message points to the wrong exercise) -
4.4: helper functions and unit tests, step2
See commit 19d6110 (commit message points to the wrong exercise) -
4.5*: helper functions and unit tests, step3
See commit cbcceec -
4.6*: helper functions and unit tests, step4
See commit d180d73 -
4.7*: helper functions and unit tests, step5
See commit 77ec508 -
4.8: Blog list tests, step1
See commit 51ca0bc (commit message points to the wrong exercise) -
4.9*: Blog list tests, step2
See commit 20c1105 (commit message points to the wrong exercise) -
4.10: Blog list tests, step3
See commit c7e809e (commit message points to the wrong exercise) -
4.11: Blog list tests, step4
See commit 4550f5f (commit message points to the wrong exercise) -
4.12*: Blog list tests, step5
See commit f63b5f0 (commit message points to the wrong exercise) -
4.13: Blog list expansions, step1
See commit ae6c480 -
4.14: Blog list expansion, step2
See commit 9fe268a -
4.15: Blog list expansion, step3
See commit d1b3a82 -
4.16*: Blog list expansion, step4
See commit f55aa64 -
4.17: Blog list expansion, step5
See commit 7c44552 -
4.18: Blog list expansion, step6
See commit 54dfc8d -
4.19: Blog list expansion, step7
See commit 54dfc8d -
4.20*: Blog list expansion, step8
See commit e4c7a9c -
4.21*: Blog list expansion, step9
See commit d18b5e1 -
4.22*: Blog list expansion, step10
See commit 4d745bb -
4.23: Blog list expansion, step11
See commit 8f37242
-
5.1: bloglist frontend, step1
See commit 0084fdc -
5.2: bloglist frontend, step2
See commit 05f5d75 -
5.3: bloglist frontend, step3
See commit ab85240 -
5.4: bloglist frontend, step4
See commit 3939270 -
5.5: bloglist frontend, step5
See commit cccc6e0 -
5.6: bloglist frontend, step6
See commit c6ca8f7 -
5.7: bloglist frontend, step7
See commit 1bd12f0 -
5.8: bloglist frontend, step8
See commit 6789bb6 -
5.9: bloglist frontend, step9
See commit 07693de -
5.10: bloglist frontend, step10
See commit 4abd55f -
5.11: bloglist frontend, step11
See commit 46d10e2 -
5.12: bloglist frontend, step12
See commit f76ec76 -
5.13: Blog list tests, step1
See commit 212d1a6 -
5.14: Blog list tests, step2
See commit ef1c777 -
5.15: Blog list tests, step3
See commit 2c984e5 -
5.16: Blog list tests, step4
See commit 180794a -
5.17: Blog list end to end, step1
See commit 2b81a35 -
5.18: Blog list end to end, step2
See commit ceed6fe -
5.19: Blog list end to end, step3
See commit b9ec298 -
5.20: Blog list end to end, step4
See commit dabb93c -
5.21: Blog list end to end, step5
See commit c38ca5d -
5.22: Blog list end to end, step6
See commit b5bffd3
-
6.1: unicafe revisited, step1
See commit 197a35d -
6.2: unicafe revisited, step2
See commit 54e6fb31 -
6.3: anecdotes, step1
See commit -
6.4: anecdotes, step2
See commit d64956c -
6.5: anecdotes, step3
See commit fa41919 -
6.6: anecdotes, step4
See commit fb5f7e4 -
6.7: anecdotes, step5
See commit bdccd89 -
6.8: anecdotes, step6
See commit 4383ad2 -
6.9: Better anecdotes, step7
See commit daecffb -
6.10: Better anecdotes, step8
See commit 3d4a486 -
6.11: Better anecdotes, step9
See commit ce950d3 -
6.12*: Better anecdotes, step10
See commit d57e47b -
6.13: Anecdotes and the backend, step1
See commit 5dc87fc -
6.14: Anecdotes and the backend, step2
See commit 20b8a87 -
6.15: Anecdotes and the backend, step3
See commit 7cfe6b3 -
6.16: Anecdotes and the backend, step4
See commit 141e744 -
6.17: Anecdotes and the backend, step5
See commit b65d98f -
6.18: Anecdotes and the backend, step6
See commit 92fbc3c -
6.19: Anecdotes and connect, step1
See commit f5c387d -
6.20: Anecdotes and connect, step2
See commit df258da -
6.21: anecdotes, the grand finale
See commit a13fd20
-
7.1: routed anecdotes, step1
See commit 4063b60 -
7.2: routed anecdotes, step2
See commit a7869a9 -
7.3: routed anecdotes, step3
See commit 396dae5 -
7.4: anecdotes and hooks, step1
See commit 335fded -
7.5: anecdotes and hooks, step2
See commit f6faae7 -
7.6: anecdotes and hooks, step3
See commit 01bd94e -
7.7: country hook
See commit 9482dbc -
7.8: ultimate hooks
See commit 9ace9ed -
7.9: automatic code formatting
See commit f1c5883 -
7.10: redux, step1
See commit 0e4052e -
7.11: redux, step2
See commit a3e305c -
7.12: redux, step3
See commit ab80551 -
7.13: redux, step4
See commit 04bc5d7 -
7.14: user view
See commit 45e42d2 -
7.15: Individual user view
See commit 5f3cd76 -
7.16: Blog view
See commit 50d5e9e -
7.17: Navigation
See commit bc24da8 -
7.18: comments, step1
See commit 9dcf6b0 -
7.19: comments, step2
See commit b8a8e0b Misspelled exercise name in commit message -
7.20: styles, step1
See commit 3c5e41f -
7.21: styles, step2
See commit cc778cb Misspelled exercise name in commit message