Skip to content

Latest commit

 

History

30 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DGS Lernen

App for learning German Sign Language, built on the SignDict API. Runs entirely on-device. Progress and lists stay local.

Install

Get it on GitHub Get it on Obtainium

The GitHub release provides one APK per architecture. Obtainium follows these releases automatically.

Verify the build provenance attestation:

gh attestation verify app-arm64-v8a-release.apk --repo DoPri/gebaerden

Development

flutter pub get
dart run build_runner build
flutter run

build_runner regenerates the database after changes to lib/db/tables.dart.

flutter analyze
flutter test
flutter test --coverage && python3 tools/coverage.py 95

pre-commit install adds format, analysis, and tests to every commit.

Device tests

test/ runs headless. integration_test/ requires a phone or emulator:

tools/integration.sh                                          # Any device
tools/integration.sh emulator-5554                            # Specific device
tools/integration.sh emulator-5554 integration_test/learn_test.dart

The script grants POST_NOTIFICATIONS on start to enable reminder tests. app_test.dart verifies the live signdict.org API. learn_test.dart and lists_test.dart drive the shell using seeded data.

Builds

flutter build apk --release --split-per-abi
flutter build ipa

Android requires SDK 37 and JDK 17+.

export ANDROID_HOME="$HOME/Android/Sdk"
sdkmanager "platform-tools" "platforms;android-37" "build-tools;36.0.0"

The release APK remains unsigned without ANDROID_KEYSTORE in the environment, supporting F-Droid distribution. See RELEASING.md.

Web

The web build uses a proxy to bypass signdict.org CORS restrictions. See the "Container" section for deployment.

Container

Every tag publishes a linux/amd64 image to ghcr:

docker run -p 8080:8080 ghcr.io/dopri/gebaerden:latest

Verify the image attestation:

gh attestation verify oci://ghcr.io/dopri/gebaerden:latest --repo DoPri/gebaerden

Deploy using docker-compose.yml:

docker compose pull && docker compose up -d

Build locally:

docker compose up -d --build

Decisions

docs/adr/ documents architecture decisions.

License

Code: see LICENSE.

Videos belong to SignDict under various CC licenses. Rights holder and license appear below every video.

About

Android and iOS app for learning German Sign Language (DGS), built on the open SignDict dictionary. FSRS trainer, fingerspelling, custom lists, and full offline use.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages