- go to base directory
cd login-app
- install packages
yarn
- run
yarn start
- run jest test suites
yarn test
- I've opted to use emotion for all styling, that way I can avoid all kinds of inheritance and general shared state issues
- I opted to write my own password validation, unfortunately I had to use regex as I'm on a tight schedule and I couldn't find any packages I liked to do it for me
- I do not like using regex... :) it is difficult to read which is bad for maintenance, but at least in this case it is tested
- There are no classes, this is typical of my style, I try to write functionally and minimise side effects
- The jest tests only cover the logic around password acceptance criteria, this was all pure functions so it was easy enough to test given the schedule
- If I had more time I would probably use cypress for testing the UI stuff, some things already have
aria-labels
so it wouldn't be too hard to do - I couldn't find a way to load the font used in the design through npm so I just left it for now