2020-05-24 20:07:52 +02:00
|
|
|
This is the repository of Flowee Pay.
|
|
|
|
|
|
|
|
|
|
Flowee Pay is a payment solution, also often called wallet, that allows
|
|
|
|
|
users to pay and receive Bitcoin Cash in a simple application with little
|
2022-07-21 13:17:29 +02:00
|
|
|
to no external parties or (indexing) servers it needs to depend on.
|
2020-05-24 20:07:52 +02:00
|
|
|
The only really required dependent is the peer to peer network, and thus
|
|
|
|
|
the Internet.
|
|
|
|
|
|
|
|
|
|
We use QML for the user interface, which allows fast turnaround for
|
|
|
|
|
skinning and a very strong model/view separation. The goal here is to have
|
|
|
|
|
multiple user interfaces for the one codebase. For instance you can have
|
2020-10-23 20:41:18 +02:00
|
|
|
a very different user experience and set of features on desktop than on
|
|
|
|
|
Android. You can simply "skin" an existing GUI and change it to have your
|
|
|
|
|
companies logo (we want you to do that! Just please use a different name
|
|
|
|
|
for the app you ship then!)
|
2020-05-24 20:07:52 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
The goal of having a Free Software product like Flowee Pay is that average
|
|
|
|
|
users can use the community client and when companies that want to bundle a
|
|
|
|
|
wallet with their product (for instance to do some token thingy) they are
|
|
|
|
|
more than welcome to provide their own skinning instead of the ones that
|
|
|
|
|
are included in this repo.
|
|
|
|
|
|
|
|
|
|
Any companies or groups doing this are going to help increase the quality
|
|
|
|
|
of the main free software product and thus this benefits all.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BUILDING
|
|
|
|
|
|
2020-10-23 20:41:18 +02:00
|
|
|
Flowee Pay uses libraries from Flowee, you need to
|
2024-10-22 00:03:53 +02:00
|
|
|
either install the main flowee-libs package via your package manager
|
2020-10-23 20:41:18 +02:00
|
|
|
or compile it before you compile Pay.
|
2022-08-19 14:56:36 +02:00
|
|
|
|
|
|
|
|
For ubuntu getting the latest is a matter of calling:
|
|
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
``` sh
|
2022-08-19 14:56:36 +02:00
|
|
|
sudo add-apt-repository ppa:flowee/ppa
|
|
|
|
|
sudo apt update
|
|
|
|
|
sudo apt install flowee-libs
|
|
|
|
|
```
|
2020-05-24 20:07:52 +02:00
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
Additionally you will want to have some development packages installed;
|
2020-05-24 20:07:52 +02:00
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
``` sh
|
|
|
|
|
sudo apt install build-essential libboost-all-dev libssl-dev cmake \
|
2024-02-04 15:53:03 +01:00
|
|
|
libzxing-dev qdbus-qt6 qt6-l10n-tools, libqt6shadertools6-dev \
|
|
|
|
|
libqt6svg6-dev qt6-base-dev qt6-declarative-dev qt6-tools-dev
|
2020-08-11 22:42:16 +02:00
|
|
|
```
|
2022-11-07 14:31:38 +01:00
|
|
|
|
2024-02-04 15:53:03 +01:00
|
|
|
If you use the older Ubuntu Jammy (2022-04), you need to also install
|
|
|
|
|
`libgl-dev` since that was missing fromt the Qt packages back then.
|
|
|
|
|
|
|
|
|
|
After installing that succesfully, you can compile Flowee Pay by fetching
|
|
|
|
|
the sources and in the source tree run this sequence:
|
2022-11-07 14:31:38 +01:00
|
|
|
|
|
|
|
|
``` sh
|
2020-08-11 22:42:16 +02:00
|
|
|
mkdir build
|
|
|
|
|
cd build
|
|
|
|
|
cmake ..
|
2021-11-21 11:16:07 +01:00
|
|
|
make install
|
2020-08-11 22:42:16 +02:00
|
|
|
```
|
2020-05-24 20:07:52 +02:00
|
|
|
|
2024-02-04 15:53:03 +01:00
|
|
|
Running Flowee Pay requires Qt Quick, which on debian based Linux distro's
|
|
|
|
|
have been packaged to a painful number of tiny packages and as such you
|
|
|
|
|
will need these too:
|
|
|
|
|
|
|
|
|
|
``` sh
|
|
|
|
|
sudo apt install \
|
|
|
|
|
qml6-module-qtquick qml6-module-qtqml-workerscript \
|
|
|
|
|
qml6-module-qtquick-controls qml6-module-qtquick-dialogs \
|
|
|
|
|
qml6-module-qtquick-layouts qml6-module-qtquick-shapes \
|
|
|
|
|
qml6-module-qtquick-templates qml6-module-qtquick-window \
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
### Manually compiling flowee-libs:
|
2022-07-21 13:17:29 +02:00
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
We depend on the libraries shipped in 'theHub' git repo, also from Flowee.
|
|
|
|
|
If you compile that yourself, you need to make sure you `make install` it.
|
|
|
|
|
The Flowee Pay buildsystem may not find this if the install directory is not the
|
|
|
|
|
same as the packaged. In that case you may want to replace the cmake call
|
|
|
|
|
above with this slightly more complex one:
|
2020-05-24 20:07:52 +02:00
|
|
|
|
2022-11-07 14:31:38 +01:00
|
|
|
``` sh
|
|
|
|
|
cmake -DCMAKE_PREFIX_PATH=/path/to/the/thehub-installed-dir ..
|
|
|
|
|
```
|
2020-05-24 20:07:52 +02:00
|
|
|
|
2022-07-21 13:17:29 +02:00
|
|
|
## DEVS
|
2021-01-28 08:37:44 +01:00
|
|
|
|
2022-07-21 13:17:29 +02:00
|
|
|
Want to start Hacking, getting to know QML as well? Here is a video playlist of 5 short
|
|
|
|
|
videos explaining the tech [youtube](https://www.youtube.com/playlist?list=PL6CJYn40gN6h3usMQY3BSZJs08isz3jqa)
|
2021-01-28 08:37:44 +01:00
|
|
|
|
2021-11-21 11:16:07 +01:00
|
|
|
To develop on the app, especially if you will work on the QML, we suggest the
|
|
|
|
|
following workflow:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
mkdir build
|
|
|
|
|
cd build
|
|
|
|
|
cmake -Dlocal_qml=ON -DCMAKE_INSTALL_PREFIX=`pwd` ..
|
|
|
|
|
make install
|
|
|
|
|
```
|
|
|
|
|
|
2023-10-17 18:07:43 +02:00
|
|
|
The executables will be in `pay/build/bin/` and by adding the `local_qml`
|
2022-11-07 14:31:38 +01:00
|
|
|
cmake option the build will bake in the path to your QML files. On
|
2022-07-21 13:17:29 +02:00
|
|
|
your local harddrive. This allows you to change the QML files and simply
|
2021-11-21 11:16:07 +01:00
|
|
|
restart the app without recompile.
|
|
|
|
|
|
2022-07-21 13:17:29 +02:00
|
|
|
For development you can run either **pay** or **pay_mobile**, depending on which
|
2021-11-21 11:16:07 +01:00
|
|
|
front-end you are working on.
|
|
|
|
|
|
|
|
|
|
To develop on the app we suggest starting one of those app with these
|
|
|
|
|
options:
|
|
|
|
|
`bin/pay --offline --testnet4`
|
|
|
|
|
|
|
|
|
|
|
2022-07-21 18:24:14 +02:00
|
|
|
# Links
|
|
|
|
|
|
2022-12-21 16:18:59 +01:00
|
|
|
* Learn more about QML? Here is a great place to start; https://www.kdab.com/top-100-qml-resources-kdab/
|
|
|
|
|
|
2025-09-05 12:22:21 +02:00
|
|
|
* Upstream: https://bitcoincashcode.org/Flowee/pay
|
2022-07-21 18:24:14 +02:00
|
|
|
* Website: https://flowee.org
|
|
|
|
|
* Twitter: https://twitter.com/floweethehub
|
|
|
|
|
* Telegram: https://t.me/Flowee_org
|