You can play with the frontend by
rootski
repo, and cd
-ing into it.make start-backend
git lfs install
in the rootski repo, the run git pull origin master
. Git LFS makes permissions weird, so you may finding yourself needing to use sudo
for basic git commands.make seed-dev-db
cd rootski_frontend && npm install && npm run start
. (You'll need NodeJS, docker, and docker-compose installed for this to work).The project was created using npx create-react-app --template=typescript
People talk about "exporting" your React app out of the create-react-app
framework so that you can have more control over how it is configured (changing Linting, TypeScript rules, the Webpack settings, and several other things).
I personally don't mind the opinionated set of defaults that come with create-react-app
. Eventually, we could export it if the majority of frontend contributors had a strong opinion about it, but for now, I think the defaults make it easy for us.
For learning React, I highly recommend this course:
Modern React with Redux Training Course
I took this course as well as the same author's ReactNative course when I used to think Rootski would be a mobile app. I'd recommend any course this guy does.
To learn TypeScript, you really just need to write some. This video is a decent introduction to it:
TypeScript Tutorial - TypeScript for React - Learn TypeScript [2020]
I guarantee that you will love TypeScript if you haven't used it before (or some other static type tool for JavaScript). As a newcomer to the frontend portion of Rootski, TypeScript is going to give you a ton of autocompletion in your editor as well as good documentation for all the various types used throughout the codebase.