AnonKey is a zero-knowledge password manager, designed for self hosting.
This repository contains the Flutter project files for the AnonKey Frontend, which is currently WIP.
The repository containing the backend code can be found here.
Please install the Flutter IDE and SDK using this Guide after reading the following.
Currently tested platforms for running and testing the app:
- Android (recommended on Windows)
- iOS
- MacOS (needs a Signing Certificate in Xcode -> Open
/macos/Runner.xcodeproj
->Signing & Capabilities
->Select Team
andEnable Development Signing
)
Other platforms may work but aren't tested by the development Team.
Run flutter pub get
in project root as well as /lib/api/
to get all dependencies.
After installation please run the following command to generate the IconPack for the IconPicker used in the Folder Create and Update page.
Otherwise it will remain empty.
dart run flutter_iconpicker:generate_packs --packs material
To start the app execute flutter run
in your terminal at the project root and select the (virtual) device you want to run the app on.
In debug mode, the Backend URL is overriden in the file /lib/Utility/request_utility.dart
using the variable basePath
.
When using your own backend server, please update this string.
In case of problems, please feel free to open an issue or contact the development team in another way.
The dart files containing the cross-platform code are located in /lib
.
- SetUp Finger Print in
Security & Privacy
->Device Unlock
->add Fingerprint
- Authenticate via Finger Print using
...
in the Side Menu und navigating toFingerprint
Note: iOS 18.0 Simulator is bugged. Use 18.1 or <18.0
- Mac Top Bar
Features
->Face ID
orTouch ID
->Enable
- Authenticate via Finger Print using same Menu with
Matching Face
Nothing to set up. Uses System Biometrics.
This project generates localized messages based on arb files found in
the /lib/src/localization
directory.
The API endpoints interfaces are auto-generated using swagger and located in /lib/api
.
To update the API Client paste the new swagger.yaml
in /openapi/
and run:
dart run build_runner build --delete-conflicting-outputs