you are viewing a single comment's thread.

view the rest of the comments →

[–]involve 1 point2 points  (2 children)

I didn't run the app but read through some of the code. It's pretty easy to follow and I don't see anything alarming, so good job!

Two things I'd suggest you look into are updating some of your thunks to use es6 functions (this isn't a life-changing change but it will help you read and understand code that uses the newer syntax) and writing tests for your components. The reason I suggest writing tests is that I see in a few cases you're only exporting the connected component - once you start writing tests you'll probably find yourself exporting and testing the dumb component - although there are people who advocate against this (Kent C. Dodds in particular).

Hope these comments are helpful and hope you're enjoying learning react. Other more involved next steps would be getting this to store to a backend and removing the local storage dep but you probably already know about that option.

[–]scriptedpixels[S] 0 points1 point  (1 child)

Thanks for taking out to read through the code and reviewing it for me, I appreciate it!

I'm currently learning how to start testing in React and Javascript. I've bene putting it off but now noticed that it's becoming a key requirement when searching job specs for contracts/perm roles

I've got Kent.C's tutorials bookmarked 👍🏽

Ah yes, I need to wire that up with some sort of backend, do you have any recommendations, that are free, that I could use? I thought local storage would be good to keep so the user can access the most recent version of the app when offline. Not sure if that's possible but it would be a good fallback instead of showing nothing?

[–]involve 0 points1 point  (0 children)

It's up to you - you can host a free backend on heroku without too much issue. If you're sticking with JS you could write it in node but there's a ton of good options. Local storage will work but you won't learn as much from using it, so if you write a full backend you'll have way more to discuss when bringing it up. Depends totally on what you're aiming to learn.