Chris Sattinger
Chris Sattinger
Using typescript and generating types directly from the swagger backend would eliminate nearly all the runtime errors we see. https://www.npmjs.com/package/swagger-typescript-codegen See my article from a few years back: https://medium.com/@crucialfelix/bridging-the-server-client-gap-graphql-typescript-and-apollo-codegen-e5b54fa96ae2
In `.eslintrc.json` increase these from warning (1) to error (2): "react/no-deprecated": 1, "react/no-did-mount-set-state": 1, "react/no-did-update-set-state": 1, "react/no-find-dom-node": 1, "react/no-string-refs": 1, "react/prop-types": 1, These ones require a bit more refactoring and...
localStorage is sometimes unusable, for example Safari Private mode (crashes), Blackberry Android 8.1 browser (we have crashes and user reports), QuotaExceededError etc. https://michalzalecki.com/why-using-localStorage-directly-is-a-bad-idea/ This looks good: https://www.npmjs.com/package/local-storage-fallback That would solve...
The slowest thing on starting up the app is that multiple network calls are made to fetch data. We could ship some data with each app release: - currencies -...
There are only a few tests currently, but even now it can be turned on for CI. - smoke tests (run the app) - test critical transaction pages (login, donate)...