mirror of
https://github.com/pezkuwichain/pezkuwi-common.git
synced 2026-04-21 23:48:05 +00:00
92 lines
2.4 KiB
Markdown
92 lines
2.4 KiB
Markdown
# @pezkuwi/common
|
|
|
|
Common utilities, cryptographic functions, and keyring management for PezkuwiChain applications.
|
|
|
|
**Developed by Dijital Kurdistan Tech Institute**
|
|
|
|
## Overview
|
|
|
|
This repository provides utility functions with additional safety checks, allowing for consistent coding and reducing boilerplate across all [@pezkuwi](https://github.com/pezkuwichain) packages.
|
|
|
|
## Packages
|
|
|
|
| Package | Description |
|
|
|---------|-------------|
|
|
| [@pezkuwi/keyring](packages/keyring/) | Keyring management for accounts |
|
|
| [@pezkuwi/util](packages/util/) | General utility functions |
|
|
| [@pezkuwi/util-crypto](packages/util-crypto/) | Cryptographic and hashing utilities |
|
|
| [@pezkuwi/networks](packages/networks/) | Network definitions |
|
|
| [@pezkuwi/x-bigint](packages/x-bigint/) | BigInt polyfills |
|
|
| [@pezkuwi/x-fetch](packages/x-fetch/) | Fetch polyfills |
|
|
| [@pezkuwi/x-global](packages/x-global/) | Global object utilities |
|
|
| [@pezkuwi/x-randomvalues](packages/x-randomvalues/) | Random values polyfills |
|
|
| [@pezkuwi/x-textdecoder](packages/x-textdecoder/) | TextDecoder polyfills |
|
|
| [@pezkuwi/x-textencoder](packages/x-textencoder/) | TextEncoder polyfills |
|
|
| [@pezkuwi/x-ws](packages/x-ws/) | WebSocket polyfills |
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
# Keyring
|
|
npm install @pezkuwi/keyring
|
|
|
|
# Utilities
|
|
npm install @pezkuwi/util
|
|
|
|
# Crypto utilities
|
|
npm install @pezkuwi/util-crypto
|
|
```
|
|
|
|
## Quick Start
|
|
|
|
```javascript
|
|
import { Keyring } from '@pezkuwi/keyring';
|
|
import { hexToU8a, u8aToHex } from '@pezkuwi/util';
|
|
import { mnemonicGenerate, blake2AsHex } from '@pezkuwi/util-crypto';
|
|
|
|
// Generate a mnemonic
|
|
const mnemonic = mnemonicGenerate();
|
|
|
|
// Create a keyring and add account
|
|
const keyring = new Keyring({ type: 'sr25519' });
|
|
const pair = keyring.addFromMnemonic(mnemonic);
|
|
|
|
console.log(`Address: ${pair.address}`);
|
|
```
|
|
|
|
## Development
|
|
|
|
### Prerequisites
|
|
|
|
- Node.js >= 18.14
|
|
- Yarn 4.x (via corepack)
|
|
|
|
### Building
|
|
|
|
```bash
|
|
git clone https://github.com/pezkuwichain/pezkuwi-common
|
|
cd pezkuwi-common
|
|
corepack enable
|
|
yarn install
|
|
yarn build
|
|
```
|
|
|
|
## Tutorials
|
|
|
|
Looking for tutorials? Check out [examples](https://js.pezkuwichain.app/docs/keyring/) for guides on how to use these utilities.
|
|
|
|
## Links
|
|
|
|
- Website: https://pezkuwichain.io
|
|
- Documentation: https://docs.pezkuwichain.io
|
|
- API Docs: https://js.pezkuwichain.app
|
|
- GitHub: https://github.com/pezkuwichain
|
|
|
|
## License
|
|
|
|
Apache-2.0
|
|
|
|
## Author
|
|
|
|
Dijital Kurdistan Tech Institute
|