mirror of
https://github.com/boldsuck/haveno.git
synced 2024-12-22 20:19:21 +00:00
update documentation
- add initial docs/CONTRIBUTING.md - update CODEOWNERS.md, README.md and bounties.md - fix some issues found by codacy
This commit is contained in:
parent
b20abddcdd
commit
e7ad539f66
4 changed files with 52 additions and 37 deletions
5
.github/CODEOWNERS
vendored
5
.github/CODEOWNERS
vendored
|
@ -4,5 +4,6 @@
|
||||||
# Default
|
# Default
|
||||||
* @woodser
|
* @woodser
|
||||||
|
|
||||||
# /docs
|
# Documentation
|
||||||
/docs/ @erciccione
|
/docs/ @haveno-dex/core-team
|
||||||
|
*.md @haveno-dex/core-team
|
55
README.md
55
README.md
|
@ -1,16 +1,18 @@
|
||||||
<div align="center">
|
<div align="center">
|
||||||
<img src="https://raw.githubusercontent.com/haveno-dex/haveno-meta/721e52919b28b44d12b6e1e5dac57265f1c05cda/logo/haveno_logo_landscape.svg" alt="Haveno logo">
|
<img src="https://raw.githubusercontent.com/haveno-dex/haveno-meta/721e52919b28b44d12b6e1e5dac57265f1c05cda/logo/haveno_logo_landscape.svg" alt="Haveno logo">
|
||||||
|
|
||||||
|
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/1a4ddf140d634f2ca1fd120a7cff4574)](https://www.codacy.com/gh/haveno-dex/haveno/dashboard?utm_source=github.com&utm_medium=referral&utm_content=haveno-dex/haveno&utm_campaign=Badge_Grade)
|
||||||
|
![GitHub Workflow Status](https://img.shields.io/github/workflow/status/haveno-dex/haveno/CI)
|
||||||
|
![GitHub issues with bounty](https://img.shields.io/github/issues-search/haveno-dex/haveno?color=%23fef2c0&label=Issues%20with%20bounties&query=project%3Ahaveno-dex%2F2) |
|
||||||
|
![Twitter Follow](https://img.shields.io/twitter/follow/HavenoDEX?style=social)
|
||||||
|
![Matrix Room](https://img.shields.io/badge/Matrix%20room-%23haveno-blue)
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## What is Haveno?
|
## What is Haveno?
|
||||||
|
|
||||||
Haveno (pronounced ha‧ve‧no) is a private and decentralized way to exchange Monero for national currencies or other cryptocurrencies. Haveno uses peer-to-peer networking and multi-signature escrow to facilitate trading without a trusted third party custodian. Disputes can be resolved using non-custodial arbitration. Everything is built around Monero and Tor.
|
Haveno (pronounced ha‧ve‧no) is a private and decentralized way to exchange Monero for national currencies or other cryptocurrencies. Haveno uses peer-to-peer networking and multi-signature escrow to facilitate trading without a trusted third party custodian. Disputes can be resolved using non-custodial arbitration. Everything is built around Monero and Tor.
|
||||||
|
|
||||||
Haveno is the Esperanto word for "Harbor". The project is stewarded by a core Team, currently formed by 2 people: ErCiccione and Woodser.
|
Haveno is the Esperanto word for "Harbor". The project is stewarded by a core Team, currently formed by 2 people: ErCiccione and Woodser. See the [FAQ in the wiki](https://github.com/haveno-dex/haveno/wiki/FAQ) for more information about the project.
|
||||||
|
|
||||||
## Why a new platform?
|
|
||||||
|
|
||||||
See the FAQ: [Why a new platform? What are the key differences compared to Bisq](https://github.com/haveno-dex/haveno/wiki/FAQ#why-a-new-platform-what-are-the-key-differences-compared-to-bisq)
|
|
||||||
|
|
||||||
## Status of the project
|
## Status of the project
|
||||||
|
|
||||||
|
@ -30,10 +32,6 @@ Currently, efforts are focused in developing the core repository ('haveno'). If
|
||||||
|
|
||||||
See [docs/trade-protocol.md](docs/trade-protocol.md)
|
See [docs/trade-protocol.md](docs/trade-protocol.md)
|
||||||
|
|
||||||
### Bounties
|
|
||||||
|
|
||||||
To incentivize development we adopt a simple bounty system. Contributors may be awarded bounties after completing a task (resolving an issue). [More details in the docs](https://github.com/erciccione/haveno/blob/master/docs/bounties.md).
|
|
||||||
|
|
||||||
## Keep in touch and help out!
|
## Keep in touch and help out!
|
||||||
|
|
||||||
Haveno is a community-driven project. For it to be succesful it's fundamental to have the support and help of the Monero community. We have our own Matrix server. Registrations are not open at the moment, but the rooms are public and can be joined from any matrix client (like Element). We look forward to hearing from you!
|
Haveno is a community-driven project. For it to be succesful it's fundamental to have the support and help of the Monero community. We have our own Matrix server. Registrations are not open at the moment, but the rooms are public and can be joined from any matrix client (like Element). We look forward to hearing from you!
|
||||||
|
@ -43,33 +41,36 @@ Haveno is a community-driven project. For it to be succesful it's fundamental to
|
||||||
|
|
||||||
Temporary email: havenodex@protonmail.com
|
Temporary email: havenodex@protonmail.com
|
||||||
|
|
||||||
## FAQ
|
### Styling guidelines
|
||||||
|
|
||||||
See the [FAQ in the wiki](https://github.com/haveno-dex/haveno/wiki/FAQ).
|
See [CONTRIBUTING.md](docs/CONTRIBUTING.md)
|
||||||
|
|
||||||
|
## Bounties
|
||||||
|
|
||||||
|
To incentivize development and reward contributors we adopt a simple bounty system. Contributors may be awarded bounties after completing a task (resolving an issue). [More details in the docs](docs/bounties.md).
|
||||||
|
|
||||||
## Running a local Haveno test network
|
## Running a local Haveno test network
|
||||||
|
|
||||||
1. Download [Monero CLI](https://www.getmonero.org/downloads/) for your system and sync Monero stagenet: `./monerod --stagenet --rpc-login superuser:abctesting123`, or alternatively, [set up a local Monero stagenet network](#running-a-local-monero-stagenet-network) (recommended)
|
1. Download [Monero CLI](https://www.getmonero.org/downloads/) for your system and sync Monero stagenet: `./monerod --stagenet --rpc-login superuser:abctesting123`, or alternatively, [set up a local Monero stagenet network](#running-a-local-monero-stagenet-network) (recommended)
|
||||||
3. Download and install [Bitcoin-Qt](https://bitcoin.org/en/download)
|
2. Download and install [Bitcoin-Qt](https://bitcoin.org/en/download)
|
||||||
4. Run Bitcoin-Qt in regtest mode, e.g.: `./Bitcoin-Qt -regtest -peerbloomfilters=1`
|
3. Run Bitcoin-Qt in regtest mode, e.g.: `./Bitcoin-Qt -regtest -peerbloomfilters=1`
|
||||||
5. In Bitcoin-Qt console, mine BTC regtest blocks: `generatetoaddress 101 bcrt1q6j90vywv8x7eyevcnn2tn2wrlg3vsjlsvt46qz`
|
4. In Bitcoin-Qt console, mine BTC regtest blocks: `generatetoaddress 101 bcrt1q6j90vywv8x7eyevcnn2tn2wrlg3vsjlsvt46qz`
|
||||||
6. Install [git lfs](https://git-lfs.github.com) for your system<br>
|
5. Install [git lfs](https://git-lfs.github.com) for your system (Ubuntu: `sudo apt install git-lfs`)
|
||||||
Ubuntu: `sudo apt install git-lfs`
|
6. `git clone https://github.com/Haveno-Dex/haveno`
|
||||||
7. `git clone https://github.com/Haveno-Dex/haveno`
|
7. Copy monero-wallet-rpc from step 1 to the haveno project root
|
||||||
8. Copy monero-wallet-rpc from step 1 to the haveno project root
|
8. Apply permission to run monero-wallet-rpc, e.g. `chmod 777 monero-wallet-rpc`
|
||||||
9. Apply permission to run monero-wallet-rpc, e.g. `chmod 777 monero-wallet-rpc`
|
9. Optionally modify [WalletConfig.java](core/src/main/java/bisq/core/btc/setup/WalletConfig.java) with custom settings
|
||||||
10. Optionally modify [WalletConfig.java](core/src/main/java/bisq/core/btc/setup/WalletConfig.java) with custom settings
|
10. `cd haveno`
|
||||||
11. `cd haveno`
|
11. `./gradlew build`
|
||||||
12. `./gradlew build`
|
12. Start seed node, arbitrator, Alice, and Bob:
|
||||||
13. Start seed node, arbitrator, Alice, and Bob:
|
|
||||||
1. `./haveno-seednode --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=2002 --appName=haveno-XMR_STAGENET_Seed_2002 --daoActivated=false`
|
1. `./haveno-seednode --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=2002 --appName=haveno-XMR_STAGENET_Seed_2002 --daoActivated=false`
|
||||||
2. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=4444 --appName=haveno-XMR_STAGENET_arbitrator --daoActivated=false --apiPassword=apitest --apiPort=9998`
|
2. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=4444 --appName=haveno-XMR_STAGENET_arbitrator --daoActivated=false --apiPassword=apitest --apiPort=9998`
|
||||||
3. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=5555 --appName=haveno-XMR_STAGENET_Alice --daoActivated=false --apiPassword=apitest --apiPort=9999`
|
3. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=5555 --appName=haveno-XMR_STAGENET_Alice --daoActivated=false --apiPassword=apitest --apiPort=9999`
|
||||||
4. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=6666 --appName=haveno-XMR_STAGENET_Bob --daoActivated=false --apiPassword=apitest --apiPort=10000`
|
4. `./haveno-desktop --baseCurrencyNetwork=XMR_STAGENET --useLocalhostForP2P=true --useDevPrivilegeKeys=true --nodePort=6666 --appName=haveno-XMR_STAGENET_Bob --daoActivated=false --apiPassword=apitest --apiPort=10000`
|
||||||
14. Arbitrator window > Account > cmd+n to register a new arbitrator
|
13. Arbitrator window > Account > cmd+n to register a new arbitrator
|
||||||
15. Arbitrator window > Account > cmd+d to register a new mediator
|
14. Arbitrator window > Account > cmd+d to register a new mediator
|
||||||
16. Deposit stagenet XMR to Alice and Bob's Haveno wallets (wallet address printed to terminal)
|
15. Deposit stagenet XMR to Alice and Bob's Haveno wallets (wallet address printed to terminal)
|
||||||
17. When deposited XMR is available, proceed to post offers, etc
|
16. When deposited XMR is available, proceed to post offers, etc
|
||||||
|
|
||||||
### Running a local Monero stagenet network
|
### Running a local Monero stagenet network
|
||||||
|
|
||||||
|
|
17
docs/CONTRIBUTING.md
Normal file
17
docs/CONTRIBUTING.md
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
## Contributing to Haveno
|
||||||
|
|
||||||
|
Thanks for wishing to help! Here there are some guidelines and information about the development process. We suggest you to join the matrix room `#haveno-dev` (relayed on Freenode) and have a chat with the devs, so that we can help get you started.
|
||||||
|
|
||||||
|
Issues are tracked on GitHub. We use [a label system](https://github.com/haveno-dex/haveno/issues/50) and GitHub's [project boards](https://github.com/haveno-dex/haveno/projects) to simplify development. Make sure to take a look at those and to follow the priorities suggested.
|
||||||
|
|
||||||
|
### General guidelines
|
||||||
|
|
||||||
|
- Be verbose. Remember this is collaborative development and we need to make life as easy as possible for future developers and for the current maintainers.
|
||||||
|
- All formatting needs to be consistent with the current code.
|
||||||
|
- Changes must be done 'the right way'. No hacks to make things work, if you are having issues, let the other devs know, so that we can help you out.
|
||||||
|
|
||||||
|
## Development process
|
||||||
|
|
||||||
|
- Pull requests should contain as many details as possible about what you are going to change and why. Avoid "title only" PRs, unless they are self-explanatory.
|
||||||
|
- Pull requests should contain one single commit, unless it makes sense to have more. Please become familiar with git if you are not.
|
||||||
|
- Pull requests won't be merged before 24 hours has passed. This timeframe will be extended when Haveno will have more active developers.
|
|
@ -1,7 +1,10 @@
|
||||||
## Bounties
|
## Bounties
|
||||||
|
|
||||||
We use bounties to incentivize development. To receive a bounty, you agree to these conditions:
|
We use bounties to incentivize development and reward contributors. All issues available for a bounty are listed [on the Kanban board](https://github.com/orgs/haveno-dex/projects/2). It's possible to list on each repository the issues with a bounty on them, by searching issues with the '💰bounty' label.
|
||||||
|
|
||||||
|
To receive a bounty, you agree to these conditions:
|
||||||
|
|
||||||
|
- Your changes must follow the [styling guidelines](contributing.md).
|
||||||
- Bounties will be set and awarded at discretion of the Haveno core team.
|
- Bounties will be set and awarded at discretion of the Haveno core team.
|
||||||
- The issues eligible for a bounty are labelled '💰bounty' and have the amount of the bounty specified in the title in this form: `[$200]` if in dollars or `[ɱ20]` if in Monero.
|
- The issues eligible for a bounty are labelled '💰bounty' and have the amount of the bounty specified in the title in this form: `[$200]` if in dollars or `[ɱ20]` if in Monero.
|
||||||
- The first person who resolves an issue in its entirety will receive the entire amount of the bounty.
|
- The first person who resolves an issue in its entirety will receive the entire amount of the bounty.
|
||||||
|
@ -11,11 +14,4 @@ We use bounties to incentivize development. To receive a bounty, you agree to th
|
||||||
- If a big number of bounties is claimed at the same time, the maintainers might opt for sending all the rewards on a specific day of the month instead of right after resolution.
|
- If a big number of bounties is claimed at the same time, the maintainers might opt for sending all the rewards on a specific day of the month instead of right after resolution.
|
||||||
- If the bounty is in dollars, the contributor will receive the amount in Monero according to the value of XMR at the moment the issue was practically resolved, so in the moment the maintainers accept the last patch resolving the issue.
|
- If the bounty is in dollars, the contributor will receive the amount in Monero according to the value of XMR at the moment the issue was practically resolved, so in the moment the maintainers accept the last patch resolving the issue.
|
||||||
|
|
||||||
You are also required to follow these styling guidelines:
|
|
||||||
|
|
||||||
- Be verbose. Remember this is collaborative development and we need to make life as easy as possible for future developers and for the current maintainers. Pull requests should contain as many details as possible about what you are going to change and why. Avoid "title only" PRs, unless they are self-explanatory.
|
|
||||||
- Pull requests should contain one single commit, unless it makes sense to have more. Please become familiar with git if you are not.
|
|
||||||
- All formatting needs to be consistent with the current code.
|
|
||||||
- Changes must be done 'the right way'. No hacks to make things work, if you are having issues, let the other devs know, so that we can help you out.
|
|
||||||
|
|
||||||
We want to keep the system simple and flexible, but we will add new rules or edit existing ones if necessary.
|
We want to keep the system simple and flexible, but we will add new rules or edit existing ones if necessary.
|
Loading…
Reference in a new issue