Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
6126588
WIP simpleswap and generic exchange
julian-CStack Oct 2, 2022
28d41cc
Merge branch 'staging' into simpleswap
julian-CStack Oct 2, 2022
65cedba
simpleswap impl
julian-CStack Oct 2, 2022
cdcda48
changenow trade to generic trade db migration
julian-CStack Oct 2, 2022
9af457d
refactor changenow api
julian-CStack Oct 2, 2022
807379f
generic changenow impl
julian-CStack Oct 2, 2022
fd00704
Currency parse fix
julian-CStack Oct 3, 2022
58deb85
move from the changenow specific ExchangeTransaction model to Using t…
julian-CStack Oct 3, 2022
649ebd1
clean up db migrate
julian-CStack Oct 3, 2022
f2eaba1
update tests and generated files
julian-CStack Oct 3, 2022
ee186a8
register TradeAdapter
julian-CStack Oct 3, 2022
078259e
cn trade hash fix
julian-CStack Oct 3, 2022
c182557
generic market pair
julian-CStack Oct 3, 2022
670c32a
generic rate estimate
julian-CStack Oct 3, 2022
6d93991
exchange icons
julian-CStack Oct 3, 2022
6b21078
extract exchange form from view
julian-CStack Oct 3, 2022
1bd6166
use exchange form in wallet initiated exchange flow
julian-CStack Oct 3, 2022
d87c998
changenow api fixes
julian-CStack Oct 3, 2022
bb12e14
exchange form state implementation and various small bug fixes
julian-CStack Oct 4, 2022
a839697
changenow reverse fixed rate trade support
julian-CStack Oct 4, 2022
3d5f6a8
update mocks
julian-CStack Oct 4, 2022
9189754
centralize changenow loading
julian-CStack Oct 4, 2022
2c8ba84
added simpleswap data loading, cleaned up providers, modified exchang…
julian-CStack Oct 4, 2022
a37b518
WIP show rates
julian-CStack Oct 4, 2022
1c0e023
simpleswap api call parse fix as well as ui trade exchange name fixes
julian-CStack Oct 4, 2022
cc38ad5
remove unused import
julian-CStack Oct 4, 2022
9acdf9c
remove unused files
julian-CStack Oct 5, 2022
534034d
Merge branch 'simpleswap' into testing-exchange
julian-CStack Oct 5, 2022
3d77c37
Add @msalazarm's setup script
sneurlax Oct 6, 2022
0b6b92d
Give advice to download script and run it vs. pulling repo then running
sneurlax Oct 6, 2022
8328046
Be more specific about Android Studio configuration
sneurlax Oct 6, 2022
1d205d2
Note to restart the IDE
sneurlax Oct 6, 2022
33f3cc0
Dart SDK tip
sneurlax Oct 7, 2022
297204d
don't call prebuild.sh, just do what it does
sneurlax Oct 7, 2022
e1e4100
namecoin electrumx fixes
Oct 7, 2022
ea52f94
change build
Oct 7, 2022
3715ec4
Merge pull request #125 from cypherstack/rylee-tmp
ryleedavis Oct 7, 2022
3e8e290
stack privacy calls page
Oct 7, 2022
8e727ff
delete account ui for ios
julian-CStack Oct 9, 2022
4339c19
easy or more private option added at startup
Oct 10, 2022
625144f
Merge pull request #126 from cypherstack/ui-fixes
julian-CStack Oct 10, 2022
1ce5740
font fix and box padding
Oct 10, 2022
5707a84
Merge branch 'staging' into testing-exchange
Oct 10, 2022
8625e6f
added stack_privacy_calls to advanced settings
Oct 10, 2022
75d1524
Merge branch 'privacyoptions' into testing-exchange
Oct 10, 2022
7f83925
fully working setting with ease of use option, tests pass
Oct 10, 2022
bf27f38
WIP startup privacy options page layout
julian-CStack Oct 11, 2022
ec4097e
Merge branch 'ui-fixes' into privacyoptions
Oct 11, 2022
8742496
new icon without white border
Oct 11, 2022
0c9b23d
toggle button and border for recommended privacy setting
Oct 11, 2022
e66feaa
font fix and added padding
Oct 11, 2022
548bc27
add delete all functionality for IOS
Oct 11, 2022
0c6d84e
Merge branch 'privacyoptions' into testing-exchange
Oct 11, 2022
c2f3c77
ui bug fixes
Oct 11, 2022
da94137
fix monero and wownero sendall
Oct 11, 2022
deec0cd
fix monero and wownero fee estimates for sending. fix some ui bugs
Oct 12, 2022
934a2f8
Merge pull request #128 from cypherstack/testing-exchange
ryleedavis Oct 12, 2022
2f7585a
fix test
Oct 12, 2022
6504285
Merge pull request #129 from cypherstack/testing-exchange
msalazarm Oct 12, 2022
764c66e
fix ui bug where chosen fee field doesnt show the updated user fee
Oct 13, 2022
3c29b9a
temp fix for firo infinite fee estimate
Oct 13, 2022
a30ee6f
increase firo gap check to 50 from 20
Oct 13, 2022
3bd0fca
fix stack backup saving issues. android 10 still not working
Oct 13, 2022
2d8a1fb
Merge pull request #132 from cypherstack/testing-exchange
ryleedavis Oct 14, 2022
907f55a
fixed rate currency selection ui update fix
julian-CStack Oct 14, 2022
b7d8e5d
exchange swap currency fix
julian-CStack Oct 14, 2022
cd40c9f
change build
Oct 14, 2022
8f2567f
can exchange check updated
julian-CStack Oct 14, 2022
eb0d536
Merge pull request #133 from cypherstack/rylee-tmp
ryleedavis Oct 14, 2022
5e601d4
Merge pull request #124 from cypherstack/scripts/setup
ryleedavis Oct 14, 2022
b4b9e09
firo mint notification description
julian-CStack Oct 15, 2022
5f804b3
hide fiat currency picker when in incognito and calls are broken
Oct 15, 2022
49c252b
watch variable so page can be refreshed correctly
Oct 15, 2022
c7d4c4f
fix null error bug, firo restores faster again
Oct 15, 2022
ac849c7
should fix #109, for coins that dont exist
Oct 15, 2022
9459654
Merge branch 'staging' into testing-exchange
Oct 15, 2022
9df7894
Merge pull request #137 from cypherstack/ui-fixes
msalazarm Oct 15, 2022
d26ea4c
hide exchange options until amount is entered
Oct 15, 2022
3dd27d9
fix bug for privacy settings
Oct 16, 2022
45ebc07
change build
Oct 16, 2022
dd00e76
red warnings not on 0 for exchange
Oct 16, 2022
fd9b09d
show the balances when toggle switching
Oct 16, 2022
40a2e5e
Merge pull request #139 from cypherstack/rylee-tmp
ryleedavis Oct 16, 2022
cd14f89
change build
Oct 16, 2022
3a2042e
quick fix for isar async write problem
Oct 16, 2022
3ff9a93
Merge branch 'staging' of https://github.com/cypherstack/stack_wallet…
Oct 16, 2022
686bf30
Merge pull request #140 from cypherstack/rylee-tmp
ryleedavis Oct 16, 2022
d8fa93b
default settings
Oct 17, 2022
2077fe1
Merge branch 'staging' of https://github.com/cypherstack/stack_wallet…
Oct 17, 2022
1e2f71c
change build
Oct 17, 2022
69b705e
Merge pull request #141 from cypherstack/rylee-tmp
ryleedavis Oct 17, 2022
e984a7f
change build
Oct 17, 2022
135bf24
Merge pull request #142 from cypherstack/rylee-tmp
ryleedavis Oct 17, 2022
a62d8f4
load exchange data everytime on button or swipe to exchange screen
julian-CStack Oct 17, 2022
78b6d09
only save incognito setting on explicit button press
julian-CStack Oct 17, 2022
1b69b60
Merge pull request #143 from cypherstack/ui-fixes
ryleedavis Oct 17, 2022
77174d5
change build
Oct 17, 2022
58fb625
Merge pull request #144 from cypherstack/rylee-tmp
ryleedavis Oct 17, 2022
1dc83eb
Merge pull request #148 from cypherstack/main
ryleedavis Oct 17, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 35 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,22 @@ Highlights include:
- Custom Nodes.
- Open source software.

## Build and run
## Building
### Prerequisites
- The only OS supported for building is Ubuntu 20.04
- A machine with at least 100 GB of Storage

The following prerequisities can be installed with the setup script `scripts/setup.sh` or manually as described below:

- Flutter 3.0.5 [(install manually or with git, do not install with snap)](https://docs.flutter.dev/get-started/install)
- Dart SDK Requirement (>=2.17.0, up until <3.0.0)
- Android setup ([Android Studio](https://developer.android.com/studio) and subsequent dependencies)

After that download the project and init the submodules
### Scripted setup
[`scripts/setup.sh`](https://github.com/cypherstack/stack_wallet/blob/main/scripts/setup.sh) is provided as a tool to set up a stock Ubuntu 20.04 installation for building: download the script and run it anywhere. This script should skip the entire [Manual setup](#manual-setup) section below and prepare you for [running](#running). It will set up the stack_wallet repository in `~/projects/stack_wallet` and build it there.

### Manual setup
After installing the prerequisites listed above, download the code and init the submodules
```
git clone https://github.com/cypherstack/stack_wallet.git
cd stack_wallet
Expand Down Expand Up @@ -57,7 +64,6 @@ cd scripts
cd ..
```


Remove pre-installed system libraries for the following packages built by cryptography plugins in the crypto_plugins folder: `boost iconv libjson-dev libsecret openssl sodium unbound zmq`. You can use
```
sudo apt list --installed | grep boost
Expand All @@ -76,7 +82,7 @@ cd scripts/android/
cd ../..
```

Building plugins for testing on Linux
Building plugins for Linux

```
cd scripts/linux/
Expand All @@ -85,10 +91,33 @@ cd scripts/linux/
cd ../..
```

Finally, plug in your android device or use the emulator available via Android Studio and then run the following commands:
## Running
### Android
Plug in your android device or use the emulator available via Android Studio and then run the following commands:
```
flutter pub get
flutter run
flutter run android
```

Note on Emulators: Only x86_64 emulators are supported, x86 emulators will not work

### Linux
Plug in your android device or use the emulator available via Android Studio and then run the following commands:
```
flutter pub get Linux
flutter run linux
```

## Android Studio
Android Studio is the recommended IDE for development, not just for launching on Android devices and emulators but also for Linux desktop development. Install it and configure it as follows:
```
# setup android studio
sudo apt install -y openjdk-11-jdk
sudo snap install android-studio --classic
```

Use Tools > SDK Manager to install the SDK Tools > Android SDK (API 30), SDK Tools > NDK, SDK Tools > Android SDK command line tools, and SDK Tools > CMake

Then install the Flutter plugin and restart the IDE. In Android Studio's options for the Flutter language, enable auto format on save to match the project's code style. If you have problems with the Dart SDK, make sure to run `flutter` in a terminal to download it (use `source ~/.bashrc` to update your environment variables if you're still using the same terminal from which you ran `setup.sh`)

Make a Pixel 4 (API 30) x86_64 emulator with 2GB of storage space for emulation
1 change: 1 addition & 0 deletions assets/svg/exchange_icons/change_now_logo_1.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions assets/svg/exchange_icons/simpleswap-icon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading