An open API service indexing awesome lists of open source software.

https://github.com/cavieslabs/hamsterswap-sdk

SDK for swapping digital collectibles and assets.
https://github.com/cavieslabs/hamsterswap-sdk

blockchain lib library npm-package sdk

Last synced: 2 months ago
JSON representation

SDK for swapping digital collectibles and assets.

Awesome Lists containing this project

README

          





HamsterSwap SDK

Trustless peer-to-peer (P2P) protocol for swapping digital collectibles and assets.
Supports both on-chain and off-chain.

## ✨ Features

- 🌈 Authentication with HamsterBox server.
- 📦 Swap collectibles and assets.
- 📦 Collectibles and assets managment.

## 🖥 Environment Support

- Modern browsers and Internet Explorer 11 (with [polyfills](https://stackoverflow.com/questions/57020976/polyfills-in-2019-for-ie11))
- Server-side Rendering
- [Electron](https://www.electronjs.org/)

| [IE / Edge](http://godban.github.io/browsers-support-badges/)
IE / Edge | [Firefox](http://godban.github.io/browsers-support-badges/)
Firefox | [Chrome](http://godban.github.io/browsers-support-badges/)
Chrome | [Safari](http://godban.github.io/browsers-support-badges/)
Safari | [Electron](http://godban.github.io/browsers-support-badges/)
Electron |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| IE11, Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions |

## 📦 Install

```bash
npm install @hamsterbox/swap
```

```bash
yarn add @hamsterbox/swap
```

## 🔨 Usage

There is three main flow usage of SDK

1. Login

```jsx
import { initHamsterSwap, Network } from "@hamsterbox/swap";
import { useWallet } from "@solana/wallet-adapter-react";

const wallet = useWallet();

const hamsterSwapSdk = initHamsterSwap({
walletProvider: wallet,
network: Network.devnet || Network.mainnet,
});

```

2. Login

```jsx
import { SIGN_MESSAGE, useHamsterSwap } from "@hamsterbox/swap";

const solanaWallet = useSolana();

/** Need initilize first before using sdk. */
const hamsterSwapSdk = useHamsterSwap();

/** Sign message to get signature. */
const signature = await signMessage(SIGN_MESSAGE);

/** Call function to sign message in wallet and login firebase hamsterbox server. */
const user = await authService.signInWithWallet(
wallet?.publicKey?.toString(),
signature
);
```

# Notes

This library is still in beta development. Significant changes may happen anytime.

# Contact

If you have any inquiries please send emails to dev@cavies.xyz.

## License

The MIT License (MIT)

Copyright (c) 2022 CaviesLabs.