Skip to content
Snippets Groups Projects
Commit edaf0655 authored by poka's avatar poka
Browse files

update README

parent e56d6d56
No related branches found
No related tags found
No related merge requests found
Pipeline #18870 waiting for manual action
# Ğecko # Ğecko
Ğecko is a transaction client owned by [Axiom-Team association] and written in Dart. It is fast and Ğecko is mobile client for Duniter v2s blockchain (Ḡ1v2): https://duniter.org/blog/duniter-substrate<br>
secure thanks to native code compilation. It is not intended to manage member accounts, but rather It use polkawallet_sdk package to interact with Duniter: https://github.com/polkawallet-io/sdk
simple wallets.
The development is quite early, you can participate in the This application is maintained by [Axiom-Team association](https://axiom-team.fr/).
discussion [on the Duniter forum](https://forum.duniter.org/t/gecko-nouveau-client-de-paiements-1-sur-mobile-en-cours-de-developpement-dart-flutter/7857) (
mostly FR)
[Axiom-Team association]: https://axiom-team.fr/ You can download the last version of the app [here](https://forum.duniter.org/t/gecko-gdev-last-build/9367/last).<br>
You can ask questions about Ḡecko developpement in our [Duniter forum](https://forum.duniter.org/t/gecko-talks-user-support/9372/last).
## Getting Started
<div align="center"> <div align="center">
...@@ -21,19 +18,17 @@ mostly FR) ...@@ -21,19 +18,17 @@ mostly FR)
## Develop ## Develop
To contribute to the code, we advise you to install the following development environment. To contribute to the code, we advise you to install the following development environment:
1. Android Studio 1. [Android Studio](https://developer.android.com/studio/install)
2. [Flutter](https://docs.flutter.dev/get-started/install)
3. [VSCode](https://code.visualstudio.com/docs/setup/linux) or [VSCodium](https://vscodium.com/)
- Android VM This will take about 12GB on your drive and 20 min of your time (with a good connection). Don't
- Android NDK
1. Flutter SDK
1. VSCode/Codium Flutter extension
This will take about 12GB on your drive and 30 min of your time (with a good connection). Don't
hesitate to ask on the forum for a peer-coding session if you are stuck. hesitate to ask on the forum for a peer-coding session if you are stuck.
At the end, `flutter doctor` command should be OK for what you need.
### Android Studio ### Android Studio
Android Studio will let you set up an Android VM and install tools you need. Android Studio will let you set up an Android VM and install tools you need.
...@@ -42,17 +37,16 @@ Android Studio will let you set up an Android VM and install tools you need. ...@@ -42,17 +37,16 @@ Android Studio will let you set up an Android VM and install tools you need.
method. method.
- At startup, do not open a project but click "configure" at the bottom of the "Welcome" menu - At startup, do not open a project but click "configure" at the bottom of the "Welcome" menu
- In "SDK Manager" - In "SDK Manager"
- SDK Platforms Ttab - SDK Platforms tab
- note your SDK folder location (later used for Rust environment variables) - select Android 11 (R) API level 30 (default) or higher
- select Android 11 (R) API level 30 (default)
- SDK Tools
- select NDK (native development kit used to compile Rust to native target)
- In "AVD Manager" - In "AVD Manager"
- create a virtual machine (ours is Pixel 4 32bits machine) - create a virtual machine
- launch it in the emulator
If you reach this point without trouble, you're good to go for the next step. If you reach this point without trouble, you're good to go for the next step.
### iOS (Xcode on Mac)
TODO: documentation
### Flutter SDK ### Flutter SDK
Flutter is a powerfull SDK to develop Android Flutter is a powerfull SDK to develop Android
...@@ -66,37 +60,36 @@ whatever you want. ...@@ -66,37 +60,36 @@ whatever you want.
Clone the ğecko repo and open a dart file (e.g. `lib/main.dart`). VSCode will suggest you to insall Clone the ğecko repo and open a dart file (e.g. `lib/main.dart`). VSCode will suggest you to insall
relevant extensions. relevant extensions.
### Build the app ### Launch the app in debug mode
In a dart file (e.g. `lib/main.dart`), type the `F5` key to build the code. The app should open Start a VM, then open a dart file (e.g. `lib/main.dart`), type the `F5` key to build the code. The app should open
automatically in your VM which is running. automatically in your VM which is running.
### Build your app for Desktop ### Build APK
#### Linux
Install dependancies:
`sudo apt-get install clang cmake ninja-build pkg-config libgtk-3-dev` You will need to generate PlayStore key or disable signing APK before continue.
Then, check this script and launch it:
Then build debug for linux: ```
./scripts/build-apk.sh
```
`flutter run -d linux` ### Integration tests
If you get this error: Open an android or iOS emulator, then launch this script:
``` ```
flutter /usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:643 (_pkg_check_modules_internal) ./integration_test/launch_test.sh
``` ```
Please try: It will start the [default test scenario](https://git.duniter.org/clients/gecko/-/blob/master/integration_test/scenarios/gecko_complete.dart).
`sudo apt install liblzma-dev`
then You can start another scenario defined [here](https://git.duniter.org/clients/gecko/-/tree/master/integration_test/scenarios) specifying the name of the file without its extension, for example to run migrate_cesium_identity.dart test:
`flutter clean && flutter run -d linux` ```
./integration_test/launch_test.sh migrate_cesium_identity
```
## Roadmap ### A problem ?
-> https://pad.p2p.legal/gecko-roadmap-2022?view Please open an issue here: https://git.duniter.org/clients/gecko/-/boards
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment