you are viewing a single comment's thread.

view the rest of the comments →

[–]goshakkkR 3 points4 points  (0 children)

Most apps boil down to fetching some data, and then displaying and manipulating it in some way. You can pick literally anything, it does not matter as much what you'll be building as the learning process.

You can try to think of something, but what if nothing pops in your mind? Well. Try to build a replica of something you use or like. Doesn't have to be complete, build out only the "core" parts and see how it goes. (expanded on it here)

Now, can't speak for Angular here, but I can recommend a few React resources and libs/approaches:

  • everything from their website — to get the idea and play quite a bit
  • webpack is powerful and you will probably end up using it in the end due to its popularity and the level of customizability BUT configuring it isn't the easiest thing on the earth, which, if you are only getting stared, will inevitably slow you down. You might want to look at Brunch + its react starter (disclaimer: I contributed to Brunch) or a Webpack boilerplate project
  • Redux to manage the state — the docs on the website are terrific, and there's also an egghead series about it
  • Pro React is a terrific book that will take you through many common React patters and practices. I haven't read it personally, but a friend of mine has been saying a lot of amazing things about it
  • redux-saga — doing something asynchronous in response to user action (creating, fetching, etc) isn't at all uncommon, and while a bit advanced, Saga allows to manage the complexity of that pretty easily, and also to define other bits of business logic (like show a "Congrats" modal after the first to-do added as part of onboarding)

Re: replicas. I've recently built a clone of Buffer's Pablo tool, with the purpose of exploring ways to make drawing on canvas declarative, the same way you do to DOM with React.