Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
8e97443
Part 2 - Exercise 2.12
ldivito May 31, 2021
f1fd793
Part 2 - Exercise 2.12 Added .eslicache to gitignore
ldivito Jun 6, 2021
3eb58ff
Part 2 - Exercise 2.12 More fixes to code
ldivito Jun 9, 2021
0333038
Part 2 - Exercise 2.12 Fixed stuff and added button to country list
ldivito Aug 22, 2021
ebd07fc
Merge branch 'master' into '2.12'
ldivito Aug 29, 2021
2859fe0
Part 2 - Exercise 2.13
ldivito Jan 26, 2022
aee073d
Part 2 - Exercise 2.14
ldivito Jan 26, 2022
a6c5fae
Part 2 - Exercise 2.15
ldivito Feb 2, 2022
1ee0db5
Part 2 - Exercise 2.16
ldivito Feb 2, 2022
2f55dd5
Part 2 - Exercise 2.17
ldivito Feb 2, 2022
f6700e7
Part 2 - Exercise 2.17
ldivito Jun 26, 2022
e04770d
Part 2 - Exercise 2.18
ldivito Jun 26, 2022
ed05b80
Part 2 - Exercise 2.16 (Fullstackopen 2023 new exercise format) Added…
ldivito Mar 7, 2023
29f0841
Part 2 - Exercise 2.17 (Fullstackopen 2023) Error message when trying…
ldivito Mar 7, 2023
a6e5a61
Exercise 4.1: New bloglist app backend
ldivito Mar 21, 2023
a0538f4
Exercise 4.2: Project structure refactor
ldivito Mar 21, 2023
246b5a9
Exercise 4.3: Dummy function for basic unit testing
ldivito Mar 22, 2023
8bf4e91
Exercise 4.4: Test blog list total likes + Lint
ldivito Mar 22, 2023
3b5829b
Exercise 4.5: Favorite blog unit test
ldivito Mar 22, 2023
73ef1b1
Exercise 4.6: Lodash util and test
ldivito Apr 13, 2023
3859f29
Exercise 4.7: More tests
ldivito Apr 13, 2023
d2f4ee1
Exercise 4.8: Blog list supertest
ldivito Apr 13, 2023
6639602
Exercise 4.9: Blog id test
ldivito Apr 13, 2023
fba2eaa
Exercise 4.10: Blog add new test
ldivito Apr 13, 2023
6537f7b
Exercise 4.11: Test blog likes
ldivito Apr 13, 2023
6586797
Exercise 4.12: Other post errors test
ldivito Apr 13, 2023
e6f2927
Exercise 4.13: Delete test
ldivito Apr 13, 2023
2361564
Exercise 4.14: Update test and fix error for delete test
ldivito May 1, 2023
241bb89
Exercise 4.15: Implement user model and controller
ldivito May 1, 2023
552e495
Exercise 4.16: Tests for user auth
ldivito May 6, 2023
50002d5
Exercise 4.17: Add user reference to blogs.js
ldivito May 7, 2023
a4cbdf8
Exercise 4.18: Token based auth
ldivito May 9, 2023
530367d
Exercise 4.19: Make adding blogs only possible by token
ldivito May 9, 2023
c723c84
Exercise 4.20: Middleware refactor
ldivito May 9, 2023
57dd913
Exercise 4.22: Auth tests
ldivito May 9, 2023
b6e2761
Exercise 4.23: Fixes
ldivito May 9, 2023
63fbaee
Exercise 4.23: Fixes
ldivito May 25, 2023
8b90e56
Part 5 - Exercise 5.1
ldivito May 25, 2023
08fcb32
Part 5 - Exercise 5.1 fix
ldivito May 25, 2023
4f574bb
Part 5 - Exercise 5.2 - Implement local storage for user and logout
ldivito May 25, 2023
78a1768
Part 5 - Exercise 5.3 - Implement user able to post
ldivito May 26, 2023
1b9a36e
Fix
ldivito May 26, 2023
77ed93b
Part 5 - Exercise 5.4 - Notifications
ldivito May 26, 2023
3c5b4ba
Part 5 - Exercise 5.5 - Toggle blog form
ldivito Jun 25, 2023
7fcef04
Part 5 - Exercise 5.6 - Move new blog form and process to own component
ldivito Jun 26, 2023
782631f
Part 5 - Exercise 5.7 - Add blog details
ldivito Jun 26, 2023
b758700
Part 5 - Exercise 5.8 - Fix author not displaying
ldivito Jun 26, 2023
5b66e47
Part 5 - Exercise 5.9 - Add like functionality
ldivito Jun 26, 2023
e512d64
Part 5 - Exercise 5.10 - Sort by likes
ldivito Jun 26, 2023
055c885
Part 5 - Exercise 5.11 - Remove btn
ldivito Jun 26, 2023
6c442a5
Part 5 - Exercise 5.12 - PropTypes and eslint
ldivito Jun 26, 2023
24e82ea
Part 5 - Exercise 5.13 - Test render blog title author
ldivito Jun 27, 2023
2a74828
Part 5 - Exercise 5.14 - Test render more info
ldivito Jun 27, 2023
3cc9eff
Part 5 - Exercise 5.15 - Test double clicking the like button
ldivito Jun 27, 2023
52fe9d4
Part 5 - Exercise 5.16 - Form testing
ldivito Jun 27, 2023
f106ba6
Part 5 - Exercise 5.17 - E2E and test login form
ldivito Jun 30, 2023
d147217
Part 5 - Exercise 5.18 - E2E login test
ldivito Jun 30, 2023
203aa64
Part 5 - Exercise 5.19 - E2E create blog test
ldivito Jun 30, 2023
68851f7
Part 5 - Exercise 5.20 - E2E like blog
ldivito Jun 30, 2023
9a04275
Part 5 - Exercise 5.21 - E2E delete blog
ldivito Jun 30, 2023
64fa12f
Part 5 - Exercise 5.22 - E2E cant delete another user blog
ldivito Jul 3, 2023
08f0aa7
Part 5 - Exercise 5.23 - E2E order by likes
ldivito Jul 3, 2023
b39b0fc
Part 6 - Exercise 6.1 - Initial testing using reducer
ldivito Jul 3, 2023
6107197
Part 6 - Exercise 6.2 - Implementing functionality
ldivito Jul 3, 2023
f49f700
Part 6 - Exercise 6.3 - Added voting
ldivito Oct 27, 2023
786f89d
Update projects
ldivito Oct 27, 2023
4f393b3
Part 6 - Exercise 6.3 - files
ldivito Oct 27, 2023
727159b
New project folder
ldivito Oct 27, 2023
b8f613d
Update projects 2
ldivito Oct 28, 2023
b9f5e62
Update projects 3
ldivito Oct 28, 2023
6d338ff
Part 6 - Exercise 6.3 - Final changes
ldivito Oct 28, 2023
795444f
Part 6 - Exercise 6.4 - Add new notes
ldivito Oct 28, 2023
f479fbf
Part 6 - Exercise 6.5 - Sort anecdotes by votes
ldivito Oct 28, 2023
3c7e75e
Part 6 - Exercise 6.6 - Add action creators
ldivito Oct 28, 2023
b3c587b
Part 6 - Exercise 6.7 - Separate form to its own component
ldivito Oct 28, 2023
0e6ae97
Part 6 - Exercise 6.8 - Separate anecdote list to its own component
ldivito Oct 28, 2023
a3d7e53
Part 6 - Exercise 6.9 - Add filter reducer and combine reducers
ldivito Oct 30, 2023
aa3d042
Part 6 - Exercise 6.10 - Added redux toolkit
ldivito Oct 30, 2023
afe2bb0
Part 6 - Exercise 6.11 - Also change reducer for anecdote list
ldivito Oct 30, 2023
db2d776
Part 6 - Exercise 6.12 - Added notifications reducer
ldivito Oct 30, 2023
a95a8ef
Part 6 - Exercise 6.13 - Added notifications for voting and creating …
ldivito Oct 30, 2023
38aa511
Part 6 - Exercise 6.13 - Implement json server and set reducer state
ldivito Nov 1, 2023
c28650f
Part 6 - Exercise 6.14 - Save anecdotes to json server
ldivito Nov 1, 2023
d195122
Part 6 - Exercise 6.15 - Moved anecdote init to async function
ldivito Nov 1, 2023
cbc97a5
Part 6 - Exercise 6.17 - Async func for creating new anecdotes
ldivito Nov 1, 2023
c92b662
Part 6 - Exercise 6.18 - Async func for voting
ldivito Nov 1, 2023
3dfd7ea
Part 6 - Exercise 6.19 - Async func for notification
ldivito Nov 1, 2023
2b5cd34
Part 6 - Exercise 6.20 - Retrieving anecdotes using React Query
ldivito Nov 1, 2023
de330b8
Part 6 - Exercise 6.22 - Implemented voting
ldivito Nov 1, 2023
28e8d07
Part 6 - Exercise 6.23 - Implement useReducer
ldivito Nov 1, 2023
13751fe
Part 6 - Exercise 6.24 - Implement notification errors
ldivito Nov 1, 2023
444a5ab
Part 7 - Exercise 7.1 - Implement router and pages
ldivito Nov 2, 2023
8a76bf0
Part 7 - Exercise 7.2 - Add anecdote single page
ldivito Nov 2, 2023
dbd5d7e
Part 7 - Exercise 7.3 - Add notification and redirect
ldivito Nov 2, 2023
ebd7734
Part 7 - Exercise 7.4 - New useField custom hook for anecdote form
ldivito Nov 2, 2023
1ba2d9d
Part 7 - Exercise 7.5 - Add reset button
ldivito Nov 2, 2023
7b092c8
Part 7 - Exercise 7.6 - Fix error
ldivito Nov 2, 2023
ec37836
Part 7 - Exercise 7.7 - Country search hook
ldivito Nov 2, 2023
962afa0
Part 7 - Exercise 7.8 - Ultimate hook
ldivito Nov 2, 2023
29a49b9
Part 7 - Exercise 7.9 - Automatic code formatting
ldivito Nov 4, 2023
0432307
Part 7 - Exercise 7.10 - Notification component state replaced with r…
ldivito Nov 28, 2023
217ecd5
Part 7 - Exercise 7.11 - Move blogs to redux
ldivito Nov 28, 2023
608066e
Part 7 - Exercise 7.12 - Move likes and delete to redux
ldivito Nov 28, 2023
8fbd679
Part 7 - Exercise 7.13 - Move users to redux
ldivito Nov 28, 2023
99523a1
Part 7 - Exercise 7.14 - Show users and blogs created
ldivito Nov 28, 2023
3644833
Part 7 - Exercise 7.15 - Show user own page and blogs
ldivito Nov 28, 2023
101431d
Part 7 - Exercise 7.16 - Separate view for blogs
ldivito Nov 28, 2023
17b56e8
Part 7 - Exercise 7.17 - Nav menu
ldivito Nov 28, 2023
6d188e7
Part 7 - Exercise 7.18 - Comments part 1
ldivito Nov 28, 2023
7d13021
Part 7 - Exercise 7.19 - Comments part 2
ldivito Nov 28, 2023
239ac32
Part 7 - Exercise 7.20 - Style
ldivito Nov 28, 2023
21df891
Part 7 - Exercise 7.21 - Add more styling
ldivito Nov 28, 2023
a5e4491
Part 8 - Exercise 8.1 - Setup Apollo Server and initialize author and…
ldivito Nov 29, 2023
ecca7d5
Part 8 - Exercise 8.2 - Added allBooks query
ldivito Nov 29, 2023
fa67355
Part 8 - Exercise 8.3 - Added allAuthors query
ldivito Nov 29, 2023
d2dd1a4
Part 8 - Exercise 8.4 - Modified allBooks query to accept author para…
ldivito Nov 29, 2023
347cb0c
Part 8 - Exercise 8.5 - Added genre parameter to search
ldivito Nov 29, 2023
314730b
Part 8 - Exercise 8.6 - Mutation for adding book
ldivito Nov 29, 2023
ee1812b
Part 8 - Exercise 8.7 - Mutation for born year
ldivito Nov 29, 2023
a66278c
Part 8 - Exercise 8.8 - Authors view
ldivito Nov 29, 2023
efb2d7d
Part 8 - Exercise 8.9 - Books view
ldivito Nov 29, 2023
3a3122a
Part 8 - Exercise 8.10 - Add new book form and mutation
ldivito Nov 29, 2023
27e9cce
Part 8 - Exercise 8.11 - Let the user set author born year
ldivito Nov 29, 2023
087c4a9
Part 8 - Exercise 8.12 - Use selector
ldivito Nov 29, 2023
ca67d15
Part 8 - Exercise 8.13 - Use MongoDB and save books in database
ldivito Nov 29, 2023
55826dc
Part 8 - Exercise 8.14 - Refactor all queries and mutations
ldivito Nov 30, 2023
21b08bb
Part 8 - Exercise 8.15 - Error msg when author or book length is low
ldivito Nov 30, 2023
1da3625
Part 8 - Exercise 8.16 - Add user and auth
ldivito Nov 30, 2023
28ba259
Part 8 - Exercise 8.17 - Fixed books page
ldivito Dec 1, 2023
8421c0a
Part 8 - Exercise 8.18 - Add user
ldivito Dec 1, 2023
5920b30
Part 8 - Exercise 8.19 (and 8.21) - Add genre filter
ldivito Dec 1, 2023
0e6a749
Part 8 - Exercise 8.20 - Recommendations
ldivito Dec 1, 2023
c7e33be
Part 8 - 8.22 - Cache
ldivito Dec 1, 2023
fc508bc
Part 8 - 8.23 - Server subscription
ldivito Dec 1, 2023
ba5b8b5
Part 8 - 8.23 - Server subscription fix
ldivito Dec 1, 2023
ec81ff8
Part 8 - 8.24 - Client side subscriptions
ldivito Dec 1, 2023
1cdd48a
Part 8 - 8.25 - Update cache
ldivito Dec 1, 2023
4778029
Part 8 - 8.26 - Fix n+1
ldivito Dec 1, 2023
5f65ac8
Part 9 - 9.1 - Calculate BMI
ldivito Dec 4, 2023
4a4da3b
Part 9 - 9.2 - Calculate exercise hours
ldivito Dec 4, 2023
40de2e3
Part 9 - 9.3 - Add arguments
ldivito Dec 4, 2023
1532ae7
Part 9 - 9.4 and 9.5 - Express server
ldivito Dec 5, 2023
7314bb9
Part 9 - 9.6 - Add ESlint and fix warnings
ldivito Dec 5, 2023
ad1a42e
Part 9 - 9.7 - Add calculator
ldivito Dec 5, 2023
10e58c0
Part 9 - 9.8 - Init backend patientor project
ldivito Dec 5, 2023
64efc95
Part 9 - 9.9 - Init frontend and fixes
ldivito Dec 6, 2023
be6a70e
Part 9 - 9.10 - Add diagnoses endpoint
ldivito Dec 6, 2023
ceb993c
Part 9 - 9.11 - Add patient endpoint
ldivito Dec 6, 2023
d0affcd
Part 9 - 9.12 - Add post patient endpoint
ldivito Feb 24, 2024
3210ebe
Part 9 - 9.13 - Add post validation and safe parsing
ldivito Feb 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions part2/countries/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

.idea/
.eslintcache
.eslicache

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*-
70 changes: 70 additions & 0 deletions part2/countries/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Getting Started with Create React App

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts

In the project directory, you can run:

### `npm start`

Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.

The page will reload if you make edits.\
You will also see any lint errors in the console.

### `npm test`

Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

### `npm run build`

Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!

See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.

### `npm run eject`

**Note: this is a one-way operation. Once you `eject`, you can’t go back!**

If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.

You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

### Code Splitting

This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)

### Analyzing the Bundle Size

This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)

### Making a Progressive Web App

This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)

### Advanced Configuration

This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)

### Deployment

This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)

### `npm run build` fails to minify

This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)
19 changes: 19 additions & 0 deletions part2/countries/db.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"posts": [
{
"id": 1,
"title": "json-server",
"author": "typicode"
}
],
"comments": [
{
"id": 1,
"body": "some comment",
"postId": 1
}
],
"profile": {
"name": "typicode"
}
}
Loading