Giter Club home page Giter Club logo

yakuswap's Introduction

Discord Announcement

Hi @everyone - thanks for sticking around!

I know it's been a while since the last project update (sorry!). Unfortunately, I've come to realize that the ecosystem is a little bit too young for most projects, including yakuSwap. That being said, Chia's potential is huge and the community is awesome. I'm working on a new, probably more useful project: [GreenWeb.js](https://github.com/Yakuhito/GreenWeb.js).

The goal of GreenWeb.js is to be Chia's equivalent of web3.js - developers will be able to include a javascript file on their site and then get data from the Chia blockchain. The project is still young and, at the time of writing this message, still has an SSL-related issue that prevents it from working. However, I'm confident that I'll find a way around it (probably with the help of someone else) and that we'll see web apps using GreenWeb.js in the future.

In other news, the #gm channel is now open. Please only use it to say 'gm' - any other thing will get you kicked!

If you have any questions, don't hesitate to use #general.

yakuSwap

Atomic cross-chain swaps for Chia and its forks.

This repository only holds the source of the UI client. The server application can be found in the yakuSwap-server repository and the Ethereum contract can be found in the yakuSwap-eth repository.

Releases

YouTube Demo Trade (older version)

Why use yakuSwap?

It's faster: There's no need to search for an escrow! A yakuSwap trade has 100 blocks (31.25 minutes) to succeed. If anything goes wrong, you'll get your money back in 150 blocks (~47 minutes) from the original transaction.

It's cheaper: The total swap fee doesn't exceed 0.75% of the transacted amount.

It's safer: It's always safer to trust nobody rather than somebody. With yakuSwap, you don't need to trust anyone - escrows, intermediaries, exchanges or trade partners - since your money is handled by smart contracts.

How to use

You're going to need a fully synced node for each currency involved in a swap. If you want to trade Ethereum, make sure you have enought ETH in your MetaMask wallet to pay for the transaction (100000 gas is enough). Download the latest version of yakuSwap from the releases page of this project on the same computer the nodes are running on and extract the zip file. Start the application and then navigate to http://localhost:4143.

After conecting with a trade partner via the Discord bot, copy the given string to your clipboard. Open yakuSwap, navigate to the 'Trades' tab, and click on the 'Add new trade' button. Click on 'Import' to load the trade from your clipboard. After clicking 'save', click on the trade to start it (the newest trade is usually at the bottom of the list).

You can now follow the intructions on screen. You and your partner will make one transaction each for fork trades. After seeing 'Done! Check your wallet :)' or 'Done' and using the wallet to confirm that you have successfully received your coins (you might have to wait a minute for the transaction to be included in a block), you can safely delete the trade.

Please note that the server creates a new log file for each trade. If anything unexpected happens with one of your trades, its log file will be useful in restoring your coins. However, the log also contains sensitive data, so please only share it with trusted people.

Screenshots

1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png

FAQ

What is an atomic cross-chain swap?

It's a way of exchanging two cryptocurrencies without a trusted third party.

Who are you?

I'm Mihai, but I usually go by the username yakuhito. Here's my Twitter profile and here's my LinkedIn page.

Why are Ethereum trades in ALPHA?

Solidity is trickier than it first seemed. The current contract needs to undergo further testing and modifications before it can be deployed on mainnet. Thank you for your patience!

Why is the binary detected as a trojan/virus?

I have a few theories, but I cannot give a definitive answer. All binaries were built using GitHub Actions from the public source code, which you can find in my repositories - if you don't want to trust me, just read the code and compile the binaries yourself.

My trade partner took a really long time (> 30 min) to complete a step. Is there any danger?

If the total time required to make a trade is higher than 30-40 minutes, I highly recommend cancelling it by closing the client and the server, waiting one hour and then opening the trade - that doesn't mean your partner had malicious intentions, though. Please keep in mind that your coins will get unlocked one hour after they were initially locked.

I just cancelled my trade / My trade just got cancelled. How long do I have to wait before getting my coins back?

If your trade gets cancelled for any reason, your coins will be locked for a certain period of time. For most currencies, that period is 192 blocks from the moment the contract was issued (about 1 hour). This long period was chosen in order to prevent a certain kind of attack against the swap.

Can my Chia fork be added?

You can PM/DM me about it, but my response time tends to be very high. I strongly recommend using the app's Import/Export functionality to distribute your currency - that way, users can add your coin with a few clicks!

Why do I have to pay a 0.7% fee on all trades?

You don't have to - you can always modify the source of the exchange contract and remove the fee. However, the 0.7% fee motivates me to continue supporting this project (which was developed in my free time), so I'd really appreciate if you don't.

License?

Apache 2.0 (see end of README.md & LICENSE)

I still have a few questions...

No problem! Just join the official Discord server and ask them :)

Thank you to everyone using this software and special thank you to everyone paying the fee!

License

Copyright 2021 Mihai Dancaescu

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

yakuswap's People

Contributors

yakuhito avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.