Skip to content
Android client for Anchr.io link collections, built with Flutter
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
android
assets
ios
lib
.gitignore
.metadata
LICENSE
README.md
pubspec.yaml

README.md

Anchr for Android

Say thanks

Android client for Anchr.io link collections, built with Flutter. This project is in an early development phase and therefore not yet feature-complete or free of bugs.

Google Play

Prerequisites

  • An existing Anchr.io account. You can't create one using the app.
  • Flutter and Dart to be installed
  • Android Studio (or VSCode)
  • An Android device or emulator

How to run?

  1. Check out repository
  2. Make sure flutter doctor has no errors
  3. flutter packages get
  4. flutter run

Developer notes

  • State handling architecture inspired by vanilla.
  • Generate launcher icon: flutter packages pub run flutter_launcher_icons:main

Release

  • Have your keystore and password ready, e.g. ~/.android/keystore.jks
  • Make sure you have android/key.properties, which looks like so
storePassword=shhh
keyPassword=shhh
keyAlias=some_alias_eg_anchr
storeFile=/home/you/.android/keystore.jks
  • flutter build apk --release

To Do

There is still plenty of space for improvements. Those include:

  • Add ability to sign up
  • Add ability to delete collections
  • Add ability to share collections
  • Improve database helpers (e.g. hide one-to-many relation between collections and links from the outside)
  • Enhance offline mode
    • Show cached content while initial request is pending
  • Implement refresh tokens (requires backend changes)
  • Add tests
  • Clean up code

Feel free to contribute!

License

GNU General Public License v3 (GPL-3) @ Ferdinand Mütsch

Buy me a coffee

You can’t perform that action at this time.
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.