Top Related Projects
Quick Overview
Haveno is a decentralized exchange (DEX) project that aims to provide a private and secure platform for trading Monero (XMR) and other cryptocurrencies. It is built on top of the Bisq framework and focuses on enhancing privacy and usability for Monero users.
Pros
- Strong focus on privacy and security for cryptocurrency trading
- Decentralized architecture, reducing the risk of single points of failure
- Built on the established Bisq framework, leveraging its proven technology
- Supports Monero (XMR) as a base currency, filling a gap in the DEX ecosystem
Cons
- Still in development, not yet ready for production use
- Limited cryptocurrency support compared to centralized exchanges
- May have lower liquidity compared to established centralized exchanges
- Potential learning curve for users unfamiliar with decentralized exchanges
Getting Started
As Haveno is still in development, there isn't a stable release available for end-users. However, developers interested in contributing to the project can follow these steps:
-
Clone the repository:
git clone https://github.com/haveno-dex/haveno.git
-
Install dependencies (ensure you have Java 11+ and Gradle installed):
cd haveno ./gradlew build
-
Run the application:
./gradlew run
For more detailed information on setting up the development environment and contributing to the project, refer to the CONTRIBUTING.md file in the repository.
Competitor Comparisons
Monero: the secure, private, untraceable cryptocurrency
Pros of Monero
- Larger and more established project with a longer history
- More comprehensive codebase covering the entire Monero cryptocurrency
- Wider adoption and larger community support
Cons of Monero
- More complex codebase, potentially harder for new contributors
- Focused solely on Monero cryptocurrency, less flexible for other use cases
- Requires more resources to run a full node
Code Comparison
Monero (C++):
bool Blockchain::add_new_block(const block& bl, block_verification_context& bvc)
{
LOG_PRINT_L3("Blockchain::" << __func__);
crypto::hash id = get_block_hash(bl);
CRITICAL_REGION_LOCAL(m_blockchain_lock);
// ...
}
Haveno (Java):
public void onAddressConfirmed(Address address) {
if (address != null && !address.getAddressString().isEmpty()) {
String addressAsString = address.getAddressString();
addressTextField.setText(addressAsString);
// ...
}
}
The code snippets show different languages and focuses. Monero deals with blockchain operations, while Haveno handles user interface elements for a decentralized exchange. Monero's codebase is more low-level and focused on cryptocurrency operations, whereas Haveno's code is higher-level and oriented towards user interactions in a trading platform.
A decentralized bitcoin exchange network
Pros of Bisq
- More established project with a larger user base and longer track record
- Supports a wider range of cryptocurrencies and fiat currencies
- Has a more extensive documentation and user guides
Cons of Bisq
- Uses Bitcoin as the base currency, which can lead to higher fees and slower transactions
- Requires a security deposit in Bitcoin, which may be a barrier for some users
- Less focus on privacy compared to Haveno's Monero-based approach
Code Comparison
Bisq (Java):
public final class OfferPayload implements NetworkPayload {
private final String id;
private final long date;
private final String ownerNodeAddress;
// ...
}
Haveno (Kotlin):
data class OfferInfo(
val id: String,
val createdAt: Long,
val ownerAddress: String,
// ...
)
Both projects use similar structures for representing offers, but Haveno's use of Kotlin allows for more concise code with data classes. Bisq's Java implementation is more verbose but may be more familiar to some developers. Haveno's codebase is generally more modern and makes use of newer language features and patterns.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
What is Haveno?
Haveno (pronounced haâ§veâ§no) is an open source platform to exchange Monero for fiat currencies like USD, EUR, and GBP or other cryptocurrencies like BTC, ETH, and BCH.
Main features:
-
Communications are routed through Tor, to preserve your privacy.
-
Trades are peer-to-peer: trades on Haveno happen between people only, there is no central authority.
-
Trades are non-custodial: Haveno supports arbitration in case something goes wrong during the trade, but arbitrators never have access to your funds.
-
There is No token, because it's not needed. Transactions between traders are secured by non-custodial multisignature transactions on the Monero network.
See the FAQ on our website for more information.
Installing Haveno
Haveno can be installed on Linux, macOS, and Windows by using a third party installer and network.
[!note] The official Haveno repository does not support making real trades directly.
To make real trades with Haveno, first find a third party network, and then use their installer or build their repository. We do not endorse any networks at this time.
A test network is also available for users to make test trades using Monero's stagenet. See the instructions to build Haveno and connect to the test network.
Alternatively, you can create your own mainnet network.
Note that Haveno is being actively developed. If you find issues or bugs, please let us know.
Main repositories
- haveno - This repository. The core of Haveno.
- haveno-ts - TypeScript library for using Haveno.
- haveno-ui - A new user interface (WIP).
- haveno-meta - For project-wide discussions and proposals.
If you wish to help, take a look at the repositories above and look for open issues. We run a bounty program to incentivize development. See Bounties.
Keep in touch and help out!
Haveno is a community-driven project. For it to be successful it's fundamental to have the support and help of the community. Join the community rooms on our Matrix server:
- General discussions: Haveno (#haveno:monero.social) relayed on IRC/Libera (
#haveno
) - Development discussions: Haveno Development (#haveno-development:monero.social) relayed on IRC/Libera (
#haveno-development
)
Email: contact@haveno.exchange Website: haveno.exchange
Contributing to Haveno
See the developer guide to get started developing for Haveno.
See docs/CONTRIBUTING.md for our styling guides.
If you are not able to contribute code and want to contribute development resources, donations fund development bounties.
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). Take a look at the issues labeled 'ð°bounty' in the main haveno
repository. Details and conditions for receiving a bounty.
Support and sponsorships
To bring Haveno to life, we need resources. If you have the possibility, please consider becoming a sponsor or donating to the project:
42sjokkT9FmiWPqVzrWPFE5NCJXwt96bkBozHf4vgLR9hXyJDqKHEHKVscAARuD7in5wV1meEcSTJTanCTDzidTe2cFXS1F
If you are using a wallet that supports OpenAlias (like the 'official' CLI and GUI wallets), you can simply put fund@haveno.exchange
as the "receiver" address.
Top Related Projects
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot