Skip to content
Snippets Groups Projects
user avatar
vjrj authored
1de61644
History

Ğinkgo

Ğinkgo is a lightweight G1 wallet for Duniter v1 written in Flutter. The app allows users to manage their G1 currency on their mobile device using just a browser.

Features

  • Introduction for beginners
  • Generation of Cesium wallet and persistence (if you refresh the page, it should display the same wallet address).
  • A point-of-sale device that generates a QR code for the public address and other QR codes with amounts (which lightweight wallets will understand).
  • Internationalization (i18n)
  • Some contextual help (for example, by tapping on "Validity").
  • Connectivity detection (to retry transactions)
  • QR code reader

Work in progress

  • Send and receive G1 transactions
  • View transaction history
  • View G1 balance and currency conversion rate

Installation

This repository requires Flutter to be installed and present in your development environment.

Clone the project and enter the project folder.

git clone GITURL.git
cd ginkgo

You can remove the screenshots located in assets/img/.

Get the dependencies.

flutter pub get

Run the app via command line or through your development environment. (optional)

flutter run lib/main.dart

Pub packages

This repository makes use of the following pub packages:

Package Version Usage
Durt ^1.0.6 Duniter crypto lib
Bloc ^8.1.0 State management
Flutter Bloc ^8.1.1 State management
Hydrated Bloc ^9.0.0 Persists Bloc state with Hive
Equatable ^2.0.5 Easily compare custom classes, used for Bloc states*
Flutter Lints ^2.0.1 Stricter linting rules
Path Provider ^2.0.11 Get the save path for Hive
Flutter Displaymode ^0.5.0 Support high refresh rate displays
Easy Localization ^3.0.1 Makes localization easy
Hive ^2.2.3 Platform independent storage.
Url Launcher ^6.1.7 Open urls in Browser
Ionicons ^0.2.2 Modern icon library

Easy Localization

To add translations, add it to assets/translations and enable it in main.dart. Also go to ios/Runner/Info.plist and update the following code:

<key>CFBundleLocalizations</key>
<array>
	<string>en</string>
  <string>es</string>
</array>

``

Screenshots

Light Theme

Wallet Terminal card
Home Light Terminal card

Credits

Thanks!

License

GNU AGPL v3 (see LICENSE)