viemic
v1.0.0
Published
This package provides simplified helper functions for viem.js to reduce boilerplate and make blockchain interactions easier.
Readme
Viemic
A lightweight helper library built on top of viem.js to simplify common blockchain interactions and reduce boilerplate.
Overview
Viemic provides easy-to-use utility functions that wrap viem and ethers functionality into reusable helpers, making it faster to build Ethereum-based scripts, bots, and applications.
Installation
npm install viemicFeatures
- Simplified wallet client creation
- Simplified public client creation
- Easy function data encoding
- Authorization signing utilities
- Nonce fetching helpers
- Minimal boilerplate for common blockchain tasks
Importing
import { createWalletClient, createPublicClient, encodeFunctionData, signAuthorization, getNonce } from "viemic";Or import everything:
import viemic from "viemic";Usage Examples
Create a Wallet Client
import { createWalletClient } from "viemic";
const wallet = await createWalletClient({
privateKey: "0x...",
chain: "mainnet"
});Create a Public Client
import { createPublicClient } from "viemic";
const publicClient = await createPublicClient({
rpcUrl: "https://eth.llamarpc.com"
});Encode Function Data
import { encodeFunctionData } from "viemic";
const data = encodeFunctionData({
abi: contractAbi,
functionName: "transfer",
args: ["0xRecipient", 1000]
});Sign Authorization
import { signAuthorization } from "viemic";
const signature = await signAuthorization({
walletClient,
message: "Authorize action"
});Get Transaction Nonce
import { getNonce } from "viemic";
const nonce = await getNonce({
address: "0xYourAddress",
client: publicClient
});License
ISC
Author
0x
