open-index/open-npm huggingface dataset:
npm package: @getsafle/asset-controller
Description: This controller detects tokens for a user and returns token balances.
Author: safle
Latest version: 1.0.12

# Safle Asset Controller

This SDK is used to detect the tokens and their balances in a given user's public address.

## Installation

To install this SDK,

```sh
npm install --save @getsafle/asset-controller
```

## Initialization

Initialize the constructor,

```js
const safleAssetController = require('@getsafle/asset-controller');

const assetController = new safleAssetController.AssetController({ rpcURL, chain });
```

<br>

> Detect Tokens

<br>

This function will detect and return the list of all the tokens in the user's public address.

```js
const tokenBalance = await assetController.detectTokens({ userAddress, tokenType });
```

* `userAddress` - User Public Address
* `tokenType` - optional parameter - valid values- erc20/erc721

<br>

> Get list of chains on which a token exists

<br>

This function will return the list of all the chains which a particular token is supported

```js
const chains = await assetController.getChains(tokenSymbol);
```

* `tokenSymbol` - Token Symbol

<br>

> Get token balances

<br>

This function will return the balances of all the tokens contract addresses passed in the array

```js
const chains = await assetController.getTokenBalances(tokensToDetect, SINGLE_CALL_BALANCES_ADDRESS, userAddress);
```

* `tokensToDetect` - array of all the token addresses
* `SINGLE_CALL_BALANCES_ADDRESS` - Contract address of the single call balance checker contract
* `userAddress` - Public address of the user to query the balance of
npm package: @getsafle/blockchain-controller
Description: Safle Blockchain Controller is used to manage and set the environments of different chains and their networks.
Author: safle
Latest version: 1.1.2

# Safle Blockchain Controller

Safle Blockchain Controller is used to manage and set the environments of different chains and their networks. This SDK supports both EVM and non-EVM chains.

## Installation

Install the package by running the command,

```sh
npm install --save @getsafle/blockchain-controller
```

## Import

Import the package into your project using,

```js
const safleBlockchainController = require('@getsafle/blockchain-controller');
```

> Get Networks

<br>

Get the list & details of all the chains supported by the Safle controllers.

```js
const networks = await safleBlockchainController.getNetworks();
```

<br>

> Get Chain Details

<br>

Get all the network details of a specific chain

```js
const networkDetails = await safleBlockchainController.getChainDetails(chain);
```

* `chain` - Chain name
npm package: @getsafle/custom-token-controller
Description: This SDK can be used to get the details of any token by it's contract address and it's balance for a specific address.
Author: getsafle
Latest version: 1.0.8

# Custom Token Controller

This SDK can be used to get the details of any token by it's contract address and it's balance for a specific address.

## Installation

To install this SDK,

```sh
npm install --save @getsafle/custom-token-controller
```

## Initialization

Initialize the constructor,

```js
const safleTokenController = require('@getsafle/custom-token-controller');

const tokenController = new safleTokenController.CustomTokenController({ userAddress, rpcURL, chain });
```

* `userAddress` - User Public Address
* `rpcURL` - Web3 RPC provider URL
* `chain` - blockchain name

<br>

> Get Token Details

<br>

This function returns the token decimal and symbol for the contract address passed as parameter.

```js
const tokenDetails = await tokenController.getTokenDetails(contractAddress);
```

* `contractAddress` - Token contract address

<br>

> Get Token Balance

<br>

```js
const tokenDetails = await tokenController.getTokenBalance(contractAddress);
```

* `contractAddress` - Token contract address
npm package: @getsafle/nft-controller
Description: Library to enable detection of Non Fungible Tokens (NFT) for any public address across the supported chains.
Latest version: 2.3.1

# **Safle NFT Controller**

This library enables the developer to detect Non Fungible Tokens (NFT) for any public address across the supported chains.

<br>

## **Installation and Usage**

> Installation

Install the package by running the command,

```sh
npm install @getsafle/nft-controller
```

Import the package into your project using,

```js
const safleNftController = require('@getsafle/nft-controller');
```

<br>

## Initialization

<br>

Initialise the class using,

`const nftController = new safleNftController.NftController();` 

<br>

## Methods

<br>

> Discover the NFTs and get their details

```js
const nfts = await nftController.detectNFTs({ publicAddress, chain, ETHNFTContinuation, PolygonNFTContinuation });
```

* `publicAddress` - Public address to detect NFTs.
* `chain` (optional) - Optional chain parameter to detect the NFTs. Supported chains : `Ethereum`, `Polygon`.

<br>

> Get Price Data

```js
const price = await nftController.getPriceData([{ publicAddress, contractAddress, tokenId, chain }]);
```

* `publicAddress` - Public address of the NFT holder.
* `chain` - Chain where the NFT was minted. Supported chains : `Ethereum`, `Polygon`.
* `tokenId` - TokenId of the NFT to get the price data.
* `contractAddress` - Contract address of the NFT collection to get the price data.
npm package: @getsafle/safle-web3-engine
Description: A JavaScript library for composing custom Ethereum providers objects using middleware modules
Latest version: 1.1.0

# Web3 ProviderEngine

Safle Web3 Engine is a tool for composing your own [web3 providers](https://github.com/ethereum/wiki/wiki/JavaScript-API#web3).

### Composable

Built to be modular - works via a stack of 'sub-providers' which are like normal web3 providers but only handle a subset of rpc methods.

The subproviders can emit new rpc requests in order to handle their own;  e.g. `eth_call` may trigger `eth_getAccountBalance`, `eth_getCode`, and others.
The provider engine also handles caching of rpc request results.

```js
const ProviderEngine = require('@getsafle/safle-web3-engine');
const { CacheSubprovider, FixtureSubprovider, FilterSubprovider, HookedWalletSubprovider, NonceSubprovider, SubscriptionsSubprovider, RpcSubprovider } = require('@getsafle/safle-web3-engine/subproviders');

var engine = new ProviderEngine()

// static results
this.engine.addProvider(new FixtureSubprovider({
  net_listening: true,
  eth_hashrate: '0x00',
  eth_mining: false,
  eth_syncing: true,
}));

this.engine.addProvider(new CacheSubprovider());

this.engine.addProvider(new SubscriptionsSubprovider());

this.engine.addProvider(new FilterSubprovider());

this.engine.addProvider(new NonceSubprovider());

// id mgmt
engine.addProvider(new HookedWalletSubprovider({
  getAccounts: function(cb){ ... },
  approveTransaction: function(cb){ ... },
  signTransaction: function(cb){ ... },
}))

// data source
engine.addProvider(new RpcSubprovider({
  rpcUrl: 'https://testrpc.metamask.io/',
}))

// log new blocks
engine.on('block', function(block){
  console.log('================================')
  console.log('BLOCK CHANGED:', '#'+block.number.toString('hex'), '0x'+block.hash.toString('hex'))
  console.log('================================')
})

// network connectivity error
engine.on('error', function(err){
  // report connectivity errors
  console.error(err.stack)
})

// start polling for blocks
engine.start()

var web3 = new Web3(engine)
```
## Running tests

```bash
npm test
```
npm package: @getsafle/vault-bitcoin-controller
Description: [![npm version](https://badge.fury.io/js/@getsafle%2Fvault-bitcoin-controller.svg)](https://badge.fury.io/js/@getsafle%2Fvault-bitcoin-controller) <img alt="Static Badge" src="https://img.shields.io/badge/License-MIT-green">   [![Discussions][discussions-
Latest version: 2.0.7

# bitcoin-controller<code><a href="https://www.docker.com/" target="_blank"><img height="50" src="https://bitcoin.org/img/icons/logotop.svg?1700824099"></a></code>

[![npm version](https://badge.fury.io/js/@getsafle%2Fvault-bitcoin-controller.svg)](https://badge.fury.io/js/@getsafle%2Fvault-bitcoin-controller) <img alt="Static Badge" src="https://img.shields.io/badge/License-MIT-green">   [![Discussions][discussions-badge]][discussions-link]
 <img alt="Static Badge" src="https://img.shields.io/badge/bitcoin_controller-documentation-purple"> 



## Install

`npm install --save @getsafle/vault-bitcoin-controller`

## Initialize the Bitcoin Controller class

```
const { KeyringController, getBalance } = require('@getsafle/vault-bitcoin-controller');

const bitcoinController = new KeyringController({
    // 12 words mnemonic to create wallet
    mnemonic: string,
    // network - type of network [TESTNET|MAINNET]
    // default is MAINNET even if no network is passed
    network: string (TESTNET | MAINNET)
});
```

## Methods

### Generate Keyring with 1 account or add new account

```
const keyringState = await bitcoinController.addAccount();
```

### Export the private key of an address present in the keyring

```
const privateKey = await bitcoinController.exportPrivateKey(address);
```

### Get all accounts in the keyring

```
const privateKey = await bitcoinController.getAccounts();
```

### Sign a transaction

```
const signedTx = await bitcoinController.signTransaction(bitcoinTx);

bitcoinTx: {from, to, amount, satPerByt}
```

### Sign a message

```
const signedMsg = await bitcoinController.signMessage(msgString, address);
```

### Get fees

```
const fees = await bitcoinController.getFees(rawTransaction);
```

### Get balance

```
const balance = await getBalance(address, network); // if network !== TESTNET then it will fetch mainnet balance
```

[discussions-badge]: https://img.shields.io/badge/Code_Quality-passing-rgba
[discussions-link]: https://github.com/getsafle/vault-bitcoin-controller/actions
npm package: @getsafle/vault-sol-controller
Description: Solana chain controller for Safle Vault
Latest version: 1.0.2

# vault-SOL-controller<code><a href="https://www.docker.com/" target="_blank"><img height="50" src="https://assets.coingecko.com/coins/images/4128/standard/solana.png?1718769756"></a></code>

[![npm version](https://badge.fury.io/js/@getsafle%2Fvault-sol-controller.svg)](https://badge.fury.io/js/@getsafle%2Fvault-sol-controller) <img alt="Static Badge" src="https://img.shields.io/badge/License-MIT-green">   [![Discussions][discussions-badge]][discussions-link]
 <img alt="Static Badge" src="https://img.shields.io/badge/sol_controller-documentation-purple"> 



## Install

`npm install --save @getsafle/vault-sol-controller`

## Initialize the solana Controller class

```
const { KeyringController, getBalance } = require('@getsafle/vault-sol-controller');

const solController = new KeyringController({
    // 12 words mnemonic to create wallet
    mnemonic: string,
    // network - type of network [TESTNET|MAINNET]
    // default is MAINNET even if no network is passed
    network: string (TESTNET | MAINNET)
});
```

## Methods

### add new account

```
const keyringState = await solController.addAccount();
```

### Export the private key of an address present in the keyring

```
const privateKey = await solController.exportPrivateKey(address);
```

### Get all accounts in the keyring

```
const privateKey = await solController.getAccounts();
```

### Sign a transaction

```
const signedTx = await solController.signTransaction(solTx);

STX transfer transaction:
solTx: {from, to, amount, txnType}

Token transfer transaction:
solTx: {from, to, amount, txnType, token}

transactionType = 'NATIVE_TRANSFER' || 'TOKEN_TRANSFER'
```

### Sign a message

```
const signedMsg = await solController.signMessage(msgString, address);
```

### Get fees

```
const fees = await solController.getFees(rawTransaction);
```

### Get balance

```
const balance = await getBalance(address, network); // if network !== TESTNET then it will fetch mainnet balance
```

[discussions-badge]: https://img.shields.io/badge/Code_Quality-passing-rgba
[discussions-link]: https://github.com/getsafle/vault-sol-controller/actions
npm package: @getsafle/vault-stacks-controller
Description: Stacks chain controller for Safle Vault
Latest version: 1.0.5

# vault-stacks-controller<code><a href="https://www.docker.com/" target="_blank"><img height="50" src="https://assets.coingecko.com/coins/images/2069/standard/Stacks_Logo_png.png?1709979332"></a></code>

[![npm version](https://badge.fury.io/js/@getsafle%2Fvault-stacks-controller.svg)](https://badge.fury.io/js/@getsafle%2Fvault-stacks-controller) <img alt="Static Badge" src="https://img.shields.io/badge/License-MIT-green">   [![Discussions][discussions-badge]][discussions-link]
 <img alt="Static Badge" src="https://img.shields.io/badge/stacks_controller-documentation-purple"> 



## Install

`npm install --save @getsafle/vault-stacks-controller`

## Initialize the Stacks Controller class

```
const { KeyringController, getBalance } = require('@getsafle/vault-stacks-controller');

const stacksController = new KeyringController({
    // 12 words mnemonic to create wallet
    mnemonic: string,
    // network - type of network [TESTNET|MAINNET]
    // default is MAINNET even if no network is passed
    network: string (TESTNET | MAINNET)
});
```

## Methods

### Generate Wallet with 1 account

```
await stacksController.generateWallet();
```

### add new account

```
const keyringState = await stacksController.addAccount();
```

### Export the private key of an address present in the keyring

```
const privateKey = await stacksController.exportPrivateKey(address);
```

### Get all accounts in the keyring

```
const privateKey = await stacksController.getAccounts();
```

### Sign a transaction

```
const signedTx = await stacksController.signTransaction(stacksTx);

STX transfer transaction:
stacksTx: {from, to, amount, transactionType, memo: (optional)}

Token transfer transaction:
stacksTx: {
        from,
        to,
        amount,
        transactionType,
        contractDetails: { contractAddress, contractName, assetName },
        memo: (optional)
    }

transactionType = 'token_transfer' || 'contract_call'
```

### Sign a message

```
const signedMsg = await stacksController.signMessage(msgString, address);
```

### Get fees

```
const fees = await stacksController.getFees(rawTransaction);
```

### Get balance

```
const balance = await getBalance(address, network); // if network !== TESTNET then it will fetch mainnet balance
```

[discussions-badge]: https://img.shields.io/badge/Code_Quality-passing-rgba
[discussions-link]: https://github.com/getsafle/vault-stacks-controller/actions
npm package: @getsedona/nuxt-admin-module
Description: Admin Panel for Nuxt.js sites
Author: Ivan Kalinichenko
Latest version: 0.0.8

# Nuxt Admin Module

Admin Panel for Nuxt.js sites

## Work in progress. Do not use in production

## Features

* Configurable hierarchical menu
* Data lists for content management
* Easy configurable forms
* Block editor
* Inline editor

## Requirements

* Nuxt.js :-)
* Vuex store

## Installation

```
npm i @getsedona/nuxt-admin-module
```

## Setup

1. Register module in `nuxt.config.js`

```js
modules: ['@getsedona/nuxt-admin-module'],
```

2. Confire a menu

3. Add auth system. E.g. nuxt-auth

4. Add login method in component

```js
  methods: {
    async login() {
      // add here a method for login

      // load dependencies for admin panel (vuex modules, ui components and other)
      await this.$adminLoader.load();
    },
    async logOut() {
      // add here a method for logout

      // unregister vuex modules
      await this.$adminLoader.unload();
    },
  },
```

5. Add plugin and add check auth and login in plugin

`~plugins/admin.client.js`

```js
export default async function(context) {
  await context.$adminLoader.load();
}
```

## Usage

## Settings

### Main toolbar

Main toolbar has two default buttons: Home button and Hide button. Their can be hiding via an admin config.

Example:

```json
{
  "showHome": true,
  "showHide": false,
}
```

There are adding custom buttons to panel.

Example:

```json
"buttons": [
  {
    "title": "SEO",
    "icon": "folder",
    "component": "components/post-seo"
  }
]
```


There are adding title after Home button and custom buttons.

Example:

```json
"toolbar": {
  "title": "Admin Panel"
},
```

Default config for toolbar:

```json
"toolbar": {
  "showHome": true,
  "showHide": false,
  "buttons": []
},
```

## Events

Is used global event bus `this.$admin`

 * `this.$admin.$emit('admin:view-change', MenuItem | string)` – change view. Provide menu item object or menu id

## Blocks

### Defaults

* `~/components/blocks` – directory for blocks. Subdirectories not supported yet

### Create a new block

A block is a vue component (vue or js file).

1. Create vue component in the blocks folder
2. Add `blockMixin` to block (required)
3. Add export const `meta` object. Is used for admin panel (optional) – see interface `BlockMeta`
npm package: @getsedona/nuxt-sedona
Description: ## Features
Author: Ivan Kalinichenko
Latest version: 1.0.2

# Sedona Nuxt.js module

## Features

- Auto include Sedona Component styles (from `sedona-components` package)
- Share variables, mixins, functions across all style files
- Registering async Sedona Vue Components (from `@getsedona/vue-components` package)

## Install

`npm i @getsedona/nuxt-sedona`

## Setup

1. Add `@getsedona/nuxt-sedona` to `nuxt.config.js`

```js
export default {
  modules: ['@getsedona/nuxt-sedona'],
}
```

2. To enumerate wanted sedona components in config

```js
export default {
  modules: ['@getsedona/nuxt-sedona'],
  sedona: {
    components: ['card', 'feature'],
  },
}
```

## What will do

With this config will include next files:

### Variables, mixins and functions

1. `sedona-components/src/common/variables.less`
2. `sedona-components/src/common/functions.less`
3. `sedona-components/src/common/mixins.less`
4. `sedona-components/src/base/variables.less`
5. `sedona-components/src/base/mixins.less`
6. `sedona-components/src/feature/variables.less`
7. `~/assets/less/variables.less`
8. `~/assets/less/styles.less`

### Styles and helpers

1. `sedona-components/src/common/styles.less`
2. `sedona-components/src/common/helpers.less`
3. `sedona-components/src/base/styles.less`
4. `sedona-components/src/card/styles.less`
5. `sedona-components/src/feature/styles.less`

### It will generated code for registering async vue components

```js
Vue.component('Card', () => import(/* webpackChunkName: "card" */ `@getsedona/vue-components/src/components/Card/Card`))
Vue.component('Feature', () =>
  import(/* webpackChunkName: "feature" */ `@getsedona/vue-components/src/components/Feature/Feature`)
)
```
npm package: @getsoftwareco/resetcss
Description: Global Modern CSS reset and base styles by GETSoftware Co.
Author: GETSoftware Co.
Latest version: 0.0.1

# GET Software - ResetCSS

![Version](https://img.shields.io/badge/version-0.0.1-blue.svg)
![License](https://img.shields.io/badge/license-MIT-green.svg)
![Size](https://img.shields.io/github/size/GETSoftwareCo/ResetCSS/reset.min.css)
[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/GETSoftwareCo/ResetCSS/graphs/commit-activity)

**ResetCSS** is a modern, lightweight, and opinionated CSS reset and starter kit maintained by [GETSoftware Co.](https://getsoft.com.tr) It ensures consistent styling across different browsers and provides a solid foundation for your web projects with essential defaults and accessibility improvements.

## 🚀 Features

- **Consistent Box Model:** Applies `box-sizing: border-box` globally.
- **Modern Font Stack:** Uses system UI fonts for the best performance and native feel.
- **Accessibility Ready:** Improved focus states for keyboard navigation.
- **Form Controls:** Normalized styling for inputs, buttons, and textareas.
- **Responsive:** Basic responsive adjustments for mobile devices.
- **Customizable:** Built with CSS Variables for easy theming.

---

## 📦 Installation

### Option 1: CDN (Recommended)
You can use **jsDelivr** to include ResetCSS directly in your project without downloading anything.

Add this line to the `<head>` section of your HTML file **before** your own stylesheets:

```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/GETSoftwareCo/ResetCSS@main/reset.min.css">
```


## Option 2: NPM
Install via npm for modern frontend workflows:

```Bash
npm install @getsoftwareco/resetcss
```

Then import it in your JavaScript or CSS entry point:

```JavaScript
import '@getsoftwareco/resetcss/reset.min.css';
```

## Option 3: Direct Download
Simply download the reset.min.css file from this repository and link it:

```Html
<link rel="stylesheet" href="path/to/reset.min.css">
```

## 🎨 Customization
ResetCSS uses CSS Custom Properties (Variables). You can easily override the default colors and settings in your own CSS file:

```CSS
:root {
    /* Override these variables in your main CSS file */
    --color-primary: #ff5722;       /* Change primary color */
    --color-link: #1e90ff;          /* Change link color */
    --color-background: #ffffff;    /* Change body background */
    --color-text: #212121;          /* Change text color */
}
```



## 🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request or open an issue for bugs and feature requests.

1. Fork the repository  
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)  
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)  
4. Push to the branch (`git push origin feature/AmazingFeature`)  
5. Open a Pull Request  

---

## 📄 License

This project is licensed under the MIT License – see the LICENSE file for details.

---

<p align="center">
Made with ❤️ by <a href="https://getsoft.com.tr">GETSoftware Co.</a>
</p>
npm package: @getspectra/spectra-typings
Description: Type definitions for @getspectra/spectra-js and @getspectra/spectra-components.
Latest version: 0.0.6

# @getspectra/spectra-typings

[![Publish](https://github.com/getspectra/spectra-typings/actions/workflows/release.yml/badge.svg)](.github/workflows/release.yml) [![NPM](https://img.shields.io/npm/v/%40getspectra%2Fspectra-typings)](https://www.npmjs.com/package/@getspectra/spectra-typings) [![GPR](https://img.shields.io/npm/v/%40getspectra%2Fspectra-typings?label=gpr)](https://github.com/getspectra/spectra-typings/pkgs/npm/spectra-typings) [![License](https://img.shields.io/github/license/getspectra/spectra-typings)](./LICENSE)

Type definitions for [@getspectra/spectra-js](https://github.com/getspectra/spectra-js) and [@getspectra/spectra-components](https://github.com/getspectra/spectra-components).
npm package: @getstafi/frontend-core
Description: `npm i @getstafi/frontend-core`
Latest version: 0.1.10

# Stafi Frontend Core

`npm i @getstafi/frontend-core`

## Components available in this package

### DataTable <br />
 `import { DataTable } from @getstafi/frontend-core`
### Typography <br />
`import { Typography } from @getstafi/frontend-core`
npm package: @getstafi/typography
Description: `npm i @getstafi/frontend-core`
Latest version: 0.0.1

# Stafi Frontend Core

`npm i @getstafi/frontend-core`

## Components available in this package

### DataTable <br />
 `import { DataTable } from @getstafi/frontend-core`
### Typography <br />
`import { Typography } from @getstafi/frontend-core`