Open source mobile app for Abakus.
Issues:
- Node.js
- npm
- Expo account with access to the
webkomorganization
npm installLog in to Expo:
npx eas-cli loginBuild the development client:
# Android
npx eas-cli build --platform android --profile development
# iOS
npx eas-cli build --platform ios --profile developmentOnce the build has completed (typically within 10–15 minutes), open the EAS build page, download the development build, and install it on your device.
Note: A new development build is only required after native changes, such as:
- adding or updating native dependencies
- changing the Expo configuration
- updating Firebase configuration
- upgrading the Expo SDK
Note: To run the development server you must have a development build. It requires the Android Studio SDK (and probably something else for iOS). To create a development build, start the development build with
npx expo run:androidThe next time you wish to start the app, run this command instead:
npx expo startNote: If you introduce native-level configuration changes, you need to create a new development build with one of these:
npx expo prebuild --clean
npx expo run:androidThen you can continue using npx expo start as before.
With the development build installed, open the app on your device and connect to the local Metro server.
We use some conventions and tools for our development.
- prettier and eslint for formatting and linting.
npm run lintnpm run format
- TypeScript for type checking.
npm run typecheck
When you open a pull request, CI will automatically run these checks.
We use Drone as our CI/CD system. The server runs at https://ci.webkom.dev.
Since we use secrets in the pipeline, the pipeline config must be signed. Use the cli:
drone sign webkom/lego-native --saveGet your login data from your user settings. Re-run this command any time .drone.yml changes.