Open Chris-Petty opened 2 months ago
Perhaps it's a discoverability and training issue - existing guidance for capacitor approach here
https://github.com/msupply-foundation/open-msupply/blob/develop/client/packages/android/README.MD
Perhaps it could be in wiki? I find it hard to know when there are readme.md
files beyond the root of the project that are important for running the project.
The suggestion
We should make it easier to dev targeting physical tablets and emulators. Over the last year or so we have acknowledged that we should really make sure things are running smoothly on tablets and one way to keep on top of it is for more of the team to do their development with OMS running on a tablet with hot reloading etc.
Loosely riffing off expectations from developing with React-Native:
cargo run --android
and it finds and runs dev mode on connect devices (adb
cli tool maybe play a role here).I don't think we'll ever get to quite the streamlined experience of RN due to rust compile times vs full JS stack, but we can get good strides there!
Existing approach AFAIK (I've never done it admittedly!) is running capacitor on the tablet and backend on host device e.g. your macbook (essentially running OMS in client mode). This does get a long way there as most of the performance UX issues are found with the frontend. Perhaps doubling down just on this and reducing friction in it will get devs to switch over.
Why should we invest time in this?
If the DX of developing for tablet is smoooooth then devs will do so more. In turn, we'll be more cognizant of performance and UX issues that will affect the majority of our users.
Are there any risks associated with this change?
Could be a rabbit hole! Shouldn't be a risk to breaking the product though.
How much effort is required?
IDK! I'm vibing a solid 1 or 2 dev weeks. Probably deserves a research spike to work it out :).
Agreed Solution
TBD - needs R&D.