Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ArkEcosystemArchive/ark-ts

An ARK API wrapper, written in TypeScript to interact with ARK blockchain.
https://github.com/ArkEcosystemArchive/ark-ts

ark blockchain cryptocurrency

Last synced: about 2 months ago
JSON representation

An ARK API wrapper, written in TypeScript to interact with ARK blockchain.

Awesome Lists containing this project

README

        

**:warning: SOON TO BE DEPRECATED IN FAVOR OF https://github.com/ArkEcosystem/core/tree/master/packages/crypto - PLEASE SUBMIT PULL REQUESTS TO THE CORE V2 REPOSITORY :warning:***

![TSARK Logo](https://i.imgur.com/AyhlVoZ.png)

# TSARK

> An ARK API wrapper, written in TypeScript to interact with ARK blockchain.

[![npm](https://img.shields.io/npm/dt/ark-ts.svg)]()
[![npm](https://img.shields.io/npm/v/ark-ts.svg)]()
[![license](https://img.shields.io/github/license/arkecosystem/ark-ts.svg)]()

> Lead Maintainer: [Lúcio Rubens](https://github.com/luciorubeens)

TSARK is a library client designed to facilitate how you interact with the ARK blockchain.

## Why TypeScript

* TypeScript is is a superset of JavaScript which mainly offers optional static typing, classes, and interfaces. The learning curve is not that steep.
* Types are optional, TSARK compiles into ES5 so you can work with both, ECMAScript or TypeScript.
* A better development experience, including auto-complete and fully documented.

## Documentation

> [API documentation](https://arkecosystem.github.io/ark-ts/) is hosted on github pages, and is generated from [TypeDoc](https://github.com/TypeStrong/typedoc).

## Installation

TSARK is avaliable from `npm`.

```bash
yarn add ark-ts
```

or

```bash
npm i ark-ts --save
```

## Usage

For the best TypeScript experience, you should either use [Visual Studio Code](http://code.visualstudio.com/), or a [plug-in for your favorite text editor](https://github.com/Microsoft/TypeScript/wiki/TypeScript-Editor-Support).

### Basic Examples

> Get delegate list from Devnet network.

```js
import { Client, Network, NetworkType } from 'ark-ts';

const devnet = Network.getDefault(NetworkType.Devnet);
const client = new Client(devnet);

client.delegate.list().subscribe((list) => {
console.log(list);
});
```

> Get address from passphrase.

```js
import { PrivateKey } from 'ark-ts/core';

// if no specify a second param, default is mainnet
const key = PrivateKey.fromSeed('my secret passphrase');
console.log(key.getPublicKey().getAddress()); // AaWU6X3pGdtSCK3s9weo9tjth64F3hixgT
```

For more examples please see documentation or look for tests in each directory.

## Running the tests

```bash
npm run test
```

## Security

If you discover a security vulnerability within this project, please send an e-mail to [email protected]. All security vulnerabilities will be promptly addressed.

## Contributing

* If you find any bugs, submit an [issue](../../issues) or open [pull-request](../../pulls), helping us catch and fix them.
* Engage with other users and developers on [ARK Slack](https://ark.io/slack/).
* Join the #development channel on Slack or contact our developer Lúcio (@lorenzo).
* [Contribute bounties](./CONTRIBUTING.md).

## Security

If you discover a security vulnerability within this package, please send an e-mail to [email protected]. All security vulnerabilities will be promptly addressed.

## Credits

This project exists thanks to all the people who [contribute](../../contributors).

## License

[MIT](LICENSE) © [ARK Ecosystem](https://ark.io)