Repository for the NMF.earth React Native application, built with Expo, Redux Toolkit and Typescript.
Installing Dependencies:
$ yarnRunning the app:
$ yarn startFor starting the app on a specfic OS:
$ yarn ios | yarn androidCopy the 2 files that contains secrets and replace them with yours
$ cp app.example.json app.json
$ cp secret.example.ts secret.tsEslint is used in the project to enforce code style and should be configured in your editor.
Prettier is also used and apply automatically by eslint
Typescript is used in the project for typechecking and should be configured in your editor.
You can check this manually by running:
yarn lintor
yarn typescriptYou can ask eslint to fix issues by running:
yarn lint:fixUse the following command to run unit tests with coverage:
$ yarn testUse the following to update unit tests
$ yarn test -uUse the following to run unit tests in watch mode while developing:
$ yarn test --watchStories (*.story.tsx) can be automatically added to storyLoader.js with :
$ yarn prestorybookTo place a new .md files inside guides folder or modify existing guide and then run node scripts/generate-guides.js to generate a new sustainable guide. Images can be used in the .md as follow :  and should be place in assets/images/guide.
Same for methodology screen, just run node scripts/generate-methodology.js to update methodology.json from methodology.md.
Run node scripts/generate-translation-files.js in order to create the files needed for the new language you want to add to the app.
Any branches merged into master will trigger a github action that runs expo publish.
During this step app.example.json is used to generate an app.json file for expo's deployment, this is done with the following script scripts/generate-app-json.js.
Have a look here if you want to contribute!
🌐 You can help us with translations with our online tool POEditor.
A big thank you to Christopher Gwilliams and to the Phelps family for their amazing contribution to the Kickstarter!
Repository and contributions are under GNU General Public License v3.0


