- Glossary
- Technology stack
- Persistence
- UI/UX
- I18n
- Error reporting
- React Native Upgrades
- Whitelabelling
Metro is used to compile and bundle the app.
React is used as frontend framework.
Babel is used to make the app available to a broader audience while allowing the developers to use many new language features. We use flow for type safety.
Redux is used for the global application state. The data which is received through the restful api of the CMS is "cached" and stored in this state container.
Testing with the live cms instance should be avoided. In debug builds the test cms is used as default, so it is only required for release builds, i.e. the versions in the stores.
To switch between test and live cms, click the location image on the landing page 10 times. On iOS it may be required to close and reopen the app after changing the cms instance.
Hidden cities
Hidden cities can be viewed on the landing page by entering the search query wirschaffendas
.
- The linter for JavaScript is eslint
You can run the linter by calling yarn run lint. Some issues can be fixed automatically by running yarn run lint:fix
Flow is used for static type checking.
You can run flow using yarn flow.
The endpoints for the webapp and this project are defined in the api-client.
- The current backend uses WordPress and can be found here.
- API Documentation
- We are working on replacing it with a python/django project.