You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The architecture is favourable: practice_core is pure Dart with no Flutter
dependency, and the UI reads theme tokens rather than platform APIs.
What would need work:
Database. drift supports web via WASM, but the current setup is
native-only.
Audio. The metronome is a Kotlin AudioTrack engine behind practice_audio_api. Web would need a second implementation — Web Audio,
probably — behind the same contract. The contract exists precisely so this is
possible.
Background cues. No equivalent of AlarmManager. Probably out of scope.
Exploration, not a commitment.
The architecture is favourable:
practice_coreis pure Dart with no Flutterdependency, and the UI reads theme tokens rather than platform APIs.
What would need work:
native-only.
practice_audio_api. Web would need a second implementation — Web Audio,probably — behind the same contract. The contract exists precisely so this is
possible.
reason Design the routine export/import format #3 comes first.
Deliverable: a written assessment of effort and of what would have to be
dropped.