Files
samplez/RIPPR.md
Dylan e8d8bcacda Refresh the Flutter snapshot and APK with the real Rippr icons
The previous APK shipped the default Flutter logo on the home screen. This build
carries the adaptive launcher icon, the monochrome notification icon, and dark
launch screens, all verified on an Android emulator.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-16 01:31:22 -05:00

3.2 KiB
Raw Blame History

Rippr — copies held here

Rippr is a GPS ride recorder for motorcycles. There are now two codebases, and neither has a git remote — they exist only on that machine, so the bundles below are the only off-machine copies of their history.

Repo What it is
~/dojo/rippr The original native Android app (Kotlin, v1 → v2.0.1). Superseded, but still the only version that has recorded real rides.
~/dojo/rippr-flutter The Flutter port — Android and iOS. Feature-complete, better tested, never yet ridden.

Snapshots taken at: native ba57a92, Flutter 82f07a2.

What is here

File Purpose
rippr-flutter-src/ Flutter port, browsable source (git archive HEAD)
rippr-flutter-history.bundle Flutter port, full git history — the actual backup
rippr-flutter-1.0-debug.apk Installable Flutter build (com.rippr.port)
rippr-src/ Native app, browsable source
rippr-full-history.bundle Native app, full git history
rippr-2.0.1-debug.apk Native app, latest installable build (com.rippr)
rippr-2.0-debug.apk, rippr-1.0-debug.apk Older native builds

The two APKs use different application ids on purpose (com.rippr vs com.rippr.port), so both install side by side. That is not an accident — validating the port depends on recording the same ride on both at once.

Installing

See INSTALL.md for Android and iOS, including the sideloading route for iPhone (which needs a Mac and takes about ten minutes).

Restoring either repo

git clone rippr-flutter-history.bundle rippr-flutter
cd rippr-flutter && flutter pub get && dart run build_runner build
flutter test

# or the native app
git clone rippr-full-history.bundle rippr
cd rippr && echo "sdk.dir=$HOME/Library/Android/sdk" > local.properties
./gradlew assembleDebug

Both need JDK 17–21 for Android — AGP does not support 25.

Where to start reading

Inside rippr-flutter-src/:

  • README.md — status, and the two bugs the port found in the native app
  • docs/port/PARITY-AUDIT.md — feature by feature, with the evidence behind each claim
  • docs/port/REAL-RIDE-CHECKLIST.md — the outstanding work
  • docs/ARCHITECTURE.md — why it is built this way
  • docs/port/PROGRESS.md — everything that went wrong during the port

Inside rippr-src/ (native): docs/v2/PROGRESS.md and docs/TESTING.md remain the record of how the app got here.

Keeping these current

cd ~/dojo/samplez

rm -rf rippr-flutter-src && mkdir rippr-flutter-src
git -C ~/dojo/rippr-flutter archive HEAD | tar -x -C rippr-flutter-src
(cd ~/dojo/rippr-flutter && git bundle create /tmp/fb.bundle --all) \
  && mv /tmp/fb.bundle rippr-flutter-history.bundle

rm -rf rippr-src && mkdir rippr-src
git -C ~/dojo/rippr archive HEAD | tar -x -C rippr-src
(cd ~/dojo/rippr && git bundle create /tmp/rb.bundle --all) \
  && mv /tmp/rb.bundle rippr-full-history.bundle

git bundle verify rippr-flutter-history.bundle
git bundle verify rippr-full-history.bundle

The exports wipe those directories wholesale, which is why this file and INSTALL.md live at the repo root rather than inside them.