- Install android emulator (from Android Studio for example).
- Install apk-mitm.
- Install mitmproxy.
- Download the Picnic APK from APK Pure or get it from your phone.
- Run apk-mitm on the picnic apk. It might complain about it being bundled, you can ignore that.
- Install the apk on the emulator.
- Go to the network settings on android and disable mobile data.
- In wifi, go to the network and set the proxy to the IP of the machine or 10.0.2.2.
- Run mitmproxy (or mitmweb for an easier interface in the browser).
- On Android open the browser and go to mitm.it.
- Download the certificate from the page and install it through the android settings.
- Open the picnic app and watch as the requests come in on the mitmproxy.
- Do whatever code changes are necessary.
- Bump the package number based on semver.
- Run
npm run build
to build the code. - Run
npm run test
to run the tests to see if everything still works. - Merge the PR to main.
- Create a tag with the new version.
- Create release notes with the changes.
- Publish the package to npm with
npm publish
.