@lens-chain/storage-client
v1.0.6
Published
The easiest way to store data on Lens Grove.
Readme
Grove Client
The official Grove client for JavaScript, TypeScript, and Node.js.
Table of Contents
Quick Start
pnpm add @lens-chain/storage-client
# or
npm install @lens-chain/storage-client
# or
yarn add @lens-chain/storage-clientCreate an instance of the StorageClient:
import { StorageClient } from "@lens-chain/storage-client";
const storageClient = StorageClient.create();Upload a file:
import { immutable }
const file: File = // …
const resource = await storageClient.uploadFile(file, { acl: immutable(37111) });
console.log(resource.uri); // lens://3552f3b6403e06ac89eba06b9f41ad82fd5dfb95c57d35b9446767…Development Workflow
This section is for developers who want to contribute to this library.
Pre-requisites:
- Node.js: >= v20. See installation guide.
- pnpm: v9.1.2. See installation guide.
Use nvm to manage your Node.js versions. Run the following command in the project root folder:
nvm useto switch to the correct Node.js version.
Enable corepack to use the correct version of pnpm.
Run the following command in the project root folder:
corepack installto install the correct version once. After that corepack will automatically use the correct version of pnpm when entering the project folder.
Initial Setup
Create .env file from the .env.example template:
cp .env.example .envand populate the PRIVATE_KEY environment variable:
PRIVATE_KEY=0x…
ACCOUNT=0x…
ADDRESS=with the details of a Lens Account owner (needed by Lens Account ACL tests).
Install the dependencies:
pnpm installUsage
Run the tests:
pnpm test
Lint the code:
pnpm lintCompile the code:
pnpm buildClean the build:
pnpm cleanIDE Setup
The project uses Biome to format and lint the code. You can install the Biome extension for your IDE: https://biomejs.dev/guides/editors/first-party-extensions/
Publishing
Create a new release branch using the
release/X.Y.Znaming convention.Bumps up version number and updates the changelog.
pnpm changeset versionCommit the changes using
chore: bumps up version numberas the commit message.Push the changes to the remote repository.
Open a pull request to the
mainbranch.Wait for all checks to pass and for the pull request to be approved.
Publish the package.
pnpm changeset publishPush tags to the remote repository.
git push --follow-tagsMerge the pull request to the
mainbranch.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
Grove Client is MIT licensed.
