Skip to content

Commit

Permalink
Add repo README
Browse files Browse the repository at this point in the history
  • Loading branch information
lcswillems committed Jul 13, 2023
1 parent 3494bd7 commit 92f7ae6
Show file tree
Hide file tree
Showing 4 changed files with 63 additions and 9 deletions.
Binary file added Logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
66 changes: 59 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,43 +1,95 @@
> :warning: **This library must not be used yet!**
<p align="center">
<picture>
<img src="./Logo.png" height="128">
</picture>
<h1 align="center">xSuite.js</h1>
</p>

---
<p align="center">
<a href="https://arda.run">
<img src="https://img.shields.io/badge/MADE%20BY%20ARDA-000000.svg?style=for-the-badge">
</a>
<a href="https://t.me/xSuite_js">
<img src="https://img.shields.io/badge/Join%20the%20telegram-blue.svg?style=for-the-badge&logo=Telegram&logoColor=ffffff">
</a>
</p>

xSuite.js is the full suite for efficiently developing high-quality MultiversX smart contracts. To ensure safety and reliability, `xsuite` and `xsuite-cli` packages are extensively tested with 450+ tests and 100% test coverage of critical parts.

xSuite.js is [made by Arda team](https://arda.run) and is the result of their deep expertise gained from building numerous dApps and auditing [25+ smart contracts](https://arda.run/audits) to date.

## Getting Started

Let's build, test and deploy your first MultiversX contract in seconds, with no requirement except [Node.js](https://nodejs.org/) being already installed on your machine.

First, install `xsuite-cli`:

```
npm install -g xsuite-cli
```

A new command `xsuite` is now available in your terminal. With this command, setup Rust on your machine:

```
xsuite setup-rust
```

```
xsuite new --dir my-contract
```
Create a new blank contract in the directory `my-contract` and open it:

```
xsuite new --dir my-contract
cd my-contract
```

Create a new wallet, encrypted with the password of your choice:

```
xsuite new-wallet --wallet wallet.json
```

Fund this new wallet with 30 xEGLD, the fake EGLD of devnet:

```
xsuite request-xegld --wallet wallet.json
```

Build the contract:

```
npm run build
```

Test the contract:

```
npm run test
```

Deploy the contract:

```
npm run deploy
```

---
## Documentation

If you want your team to be onboarded and trained to use xSuite.js, please reach out in [xSuite.js Telegram group](https://t.me/xSuite_js). xSuite.js documentation is under construction.

Your team may also want to look at the [audited contracts](https://github.com/arda-org/xSuite.js/tree/main/contracts) made by Arda team. They can be used as a starting point for new contracts and are excellent examples of how to use xSuite.js.

## Audited contracts

Arda team makes available audited contracts, that can be used as a starting point for new contracts and are excellent examples of how to use xSuite.js.

So far, 2 contracts are available:

- [blank](https://github.com/arda-org/xSuite.js/tree/main/contracts/blank): A blank contract, fully set up (contract, tests, interactions), to start your new contract from.
- [vested-transfers](https://github.com/arda-org/xSuite.js/tree/main/contracts/vested-transfers): A contract for vested transfers.

## Who is using xSuite.js?

xSuite.js has been used internally by Arda since more than a year, and has been released publicly recently. Many ecosystem teams are being onboarded and trained to use xSuite.js right now. If you want your team to be onboarded and trained too, please reach out in [xSuite.js Telegram group](https://t.me/xSuite_js).

## Community

xSuite.js has been internally used by Arda since more than a year.
The xSuite.js community can be found on [xSuite.js Telegram group](https://t.me/xSuite_js), where you can ask questions, share ideas and chat with other community members.
2 changes: 1 addition & 1 deletion contracts/blank/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 'blank' contract

A blank contract, with everything already setup (contract, tests, interactions), to use as the starting point for your new contract.
A blank contract, with everything already set up (contract, tests, interactions), to use as the starting point for your new contract.

To create a copy of the 'blank' contract on your computer:

Expand Down
4 changes: 3 additions & 1 deletion contracts/vested-transfers/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# 'vested-transfers' contract

A contract for vested transfers, with following endpoints and views:
A contract for vested transfers, i.e. a transfer spread over a period of time, with optional intermediary releases (e.g. a transfer of 100 EGLD over 4 weeks, spread into 4 weekly transfers of 25 EGLD).

The contract contains the following endpoints and views:

- `create_transfer(receiver: Address, release_schedule: ReleaseSchedule)`: endpoint to create a vested transfer,
- `execute_transfer(index: u64)`: endpoint to execute a specific vested transfer,
Expand Down

0 comments on commit 92f7ae6

Please sign in to comment.