/lsp-smart-contracts

The reference implementation for universal profiles smart contracts

Primary LanguageTypeScriptApache License 2.0Apache-2.0

Version

lsp-smart-contracts

The reference implementation for universal profiles smart contracts.

For more information see Documentation

⚠️ This package is currently in early stages of development,
use for testing or experimentation purposes only.

Overview

Installation

npm

Universal Profile smart contracts are available as a npm package.

npm install @lukso/lsp-smart-contracts

cloning the repository

Alternatively you can also clone the repository and install its dependencies to start using the smart contracts.

$ git clone https://github.com/lukso-network/lsp-smart-contracts.git
$ cd ./lsp-smart-contracts
$ npm install

Usage

in Javascript

You can use the contracts JSON ABI by importing them as follow:

import UniversalProfile from "@lukso/lsp-smart-contracts/artifacts/UniversalProfile.json";

const myContract = new this.web3.eth.Contract(UniversalProfile.abi, "", defaultOptions);

in Solidity

import "@lukso/lsp-smart-contracts/contracts/UniversalProfile.sol";

contract MyUP is UniversalProfile {
  constructor(address _newOwner) UniversalProfile(_newOwner) {
    
  }
}

Testing

Jest contract tests are defined under the tests directory. To run all the tests, run:

$ npm test

Deployment via hardhat

You can find more infos on how to deploy the contracts via hardhat in the DEPLOYMENT page.