Skip to content

Repository files navigation

DPD Flutter App

Offline Flutter app for the Digital Pali Dictionary. It is Android-first and currently in beta.

This project uses Kamma for spec-driven work. Project context, specs, plans, and reviews live in kamma/.

Install The Beta App

The public beta is for Android.

The app is still beta software. Installation uses a direct APK download rather than the Play Store. On first launch, the app downloads the dictionary database.

Deep Links

External sites can open DPD at a word with a link of the form dpd://word/<word> (percent-encode the word). Example: dpd://word/bhavana. Android only for now; the app opens to search results for that word.

For Developers

If you want to work on the app locally, it helps to have:

  • Flutter stable
  • Android SDK and adb if you want to test on Android
  • just

Typical local setup:

flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run

Relevant Flutter And Dart Commands

flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run
flutter analyze
flutter test

Relevant Just Recipes

just run                # generate the changelog asset and run the app; normal local development entry point
just analyze            # run static analysis; use this to catch lint and type issues quickly
just test               # run the test suite; use this for automated verification
just android-debug-build            # build a debug APK only
just android-debug-install          # build/install debug APK, push local DB from ../dpd-db, launch app
just android-debug-install-no-db    # install debug APK with cleared app data and no DB; test first-run download flow
just android-debug-update           # rebuild and reinstall debug APK without replacing the on-device DB
just android-debug-push-db          # push local DB from ../dpd-db and restart app; use when only the DB changed
just android-debug-delete-db        # delete the on-device DB and restart app; use to force a re-download
just android-release-build          # build a release APK only
just android-release-install        # build/install release APK, push local DB from ../dpd-db, launch app
just android-release-install-no-db  # install release APK with cleared app data and no DB; real first-run experience
just build-db           # rebuild the packaged mobile DB in ../dpd-db; only for local DB export work
just linux-run          # build and run the Linux app
just linux-push-db      # copy local DB from ../dpd-db into the Linux app location used for local testing

License

App source codeMIT License

DPD databaseCC BY-NC-SA 4.0 — the dictionary database is a separate work; see https://digitalpalidictionary.github.io/license/

About

fast, offline Digital Pāḷi Dictionary app

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages