Giter Site home page Giter Site logo

mesh-liquidity-wasm's Introduction

Ibcswap-wasm

The current state of the project is still in development and not yet ready for production use.

ibcswap-wasm is a Cosmwasm implementation of the ICS 100 and ICS 101 specifications within the Inter-Blockchain Communication (IBC) protocol of the Cosmos ecosystem. ICS 100 specifies the atomic swap functionality, while ICS 101 specifies the interchain swap functionality. As a community-driven project, ibcswap-wasm aims to provide a secure and efficient solution for cross-chain token exchanges, following the ICS 100 and ICS 101 specifications. Currently in active development, ibcswap-wasm holds the potential to enable seamless interoperability between Cosmos-based blockchains and empower decentralized finance (DeFi) applications.

Documentation

run ts-codegen

TS-Codegen

cd codegen
yarn
yarn ts-codegen

mesh-liquidity-wasm's People

Contributors

alisaweb3 avatar amityadav0 avatar dedicateddev avatar liangping avatar muniz-side avatar worldarchi avatar

Stargazers

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

Watchers

 avatar

mesh-liquidity-wasm's Issues

Add address checks

  • Add address checks before sending any native or cw20 token
  • Make sure recipient address has valid bech32 prefix

Support Multiple Multi Deposit orders

  • Currently each User can have almost 1 ACTIVE order
  • User should be able to create multiple deposit orders
  • Contract should return current list of ACTIVE orders

Deploy contracts on side-testnet-1

  • deploy contracts on chains: side, injective, osmosis, archway[optional].
  • Run relayers for chains: side, injective, osmosis, archway[optional].
  • front-end integration

Withdraw Amount issue

image

I withdraw 25% of my LP which I just deposited in few mins ago, shows insufficient amount.

ICS100: Backend: ICS 100 WASM implementation

  • Backend done, Juno <-> osmosis deployment, relayer done
    osmo1ap4d6l8et2axqx6rez8u63l9h5m0e85020h59j4nfqn03cauyh3slvzxej
    
    
    juno1qtwu4sad06svmj5hpxszy49ycg5562xtr2f4l73ldz8mryww5eeqx6ll2a
    
    Juno
    source_port:  wasm.juno1qtwu4sad06svmj5hpxszy49ycg5562xtr2f4l73ldz8mryww5eeqx6ll2a
    source_channel: 
    channel-561
    
    Osmosis
    source_port:  wasm.osmo1ap4d6l8et2axqx6rez8u63l9h5m0e85020h59j4nfqn03cauyh3slvzxej
    source_channel: 
    channel-1093
    

Few compiling issues

Hello @luckiester , Please make sure that everything work properly before you submit

  --> src/ibc.rs:49:13
   |
48 |         RECEIVE_ID => match reply.result {
   |                             ------------ this expression has type `SubMsgResult`
49 |             ContractResult::Ok(_) => Ok(Response::new()),
   |             ^^^^^^^^^^^^^^^^^^^^^ expected `SubMsgResult`, found `ContractResult<_>`
   |
   = note: expected enum `SubMsgResult`
              found enum `ContractResult<_>`

Update amm functions

  • Amm functions are using float64
  • This is not safe, remove and use Decimal library (cosmwasm-std)

Save order on submit

  • Currently orders are saved in ack function

  • If order fails to relay we delete it, so user doesn't know what happened with their order

  • Maybe add a status change in ack fail

  • We can't save it in submit because we need dest channel which can only be retrieved from packet data

Support Bid in ICS100 Wasm

In the current design, we allow maker to submit a sell order. A taker can only take the whole order.
i want a new feature which allows takers to bid the listed asset with a new amount.
let's say in this example, the maker is selling 10.02 SIDE for 3.8323 ATOM. The new feature should allow users to bid with a lower amount (e.g. 3.5 ATOM). Many users can bid at the same time within the expire time.
The maker can choose the highest bid and the taker will buy with 3.5 ATOM. If the maker doesn't take action (accept any offers) within the expire time, the order will just expire and no users will be able to take this order.

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.