Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add packages table, npm version to each package #886

Merged
merged 2 commits into from
Feb 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions README.md
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think since @lukso/lsp-smart-contracts will move to its own package, we can update the README at the root to be more reflective of the monorepo.

For instance with infos like mentioned in Swapkit SDK README.

  • what are the branches main and develop for.
  • how PRs should be opened (but this would rather go in the CONTRIBUTING section imo).
image

Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,34 @@ For more information see [Documentation](https://docs.lukso.tech/standards/smart
| :warning: | _This package is currently in early stages of development,<br/> use for testing or experimentation purposes only._ |
| :-------: | :----------------------------------------------------------------------------------------------------------------- |

## Packages

This repo contains packages for the Solidity implementation of the LSP smart contracts.

| Package | NPM | Description |
| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- |
| [`@lukso/lsp0-contracts`](./packages/lsp0-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp0-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp0-contracts) | LSP0 ERC725Account |
| [`@lukso/lsp1-contracts`](./packages/lsp1-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp1-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp1-contracts) | LSP1 Universal Receiver |
| [`@lukso/lsp1delegate-contracts`](./packages/lsp1delegate-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp1delegate-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp1delegate-contracts) | LSP1 Universal Receiver Delegate |
| [`@lukso/lsp2-contracts`](./packages/lsp2-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp2-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp2-contracts) | LSP2 ERC725Y JSON Schema |
| [`@lukso/lsp3-contracts`](./packages/lsp3-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp3-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp3-contracts) | LSP3 Profile Metadata |
| [`@lukso/lsp4-contracts`](./packages/lsp4-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp4-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp4-contracts) | LSP4 Digital Asset Metadata |
| [`@lukso/lsp5-contracts`](./packages/lsp5-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp5-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp5-contracts) | LSP5 Received Assets |
| [`@lukso/lsp6-contracts`](./packages/lsp6-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp6-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp6-contracts) | LSP6 Key Manager |
| [`@lukso/lsp7-contracts`](./packages/lsp7-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp7-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp7-contracts) | LSP7 Digital Asset |
| [`@lukso/lsp8-contracts`](./packages/lsp8-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp8-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp8-contracts) | LSP8 Identifiable Digital Asset |
| [`@lukso/lsp9-contracts`](./packages/lsp9-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp9-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp9-contracts) | LSP9 Vault |
| [`@lukso/lsp10-contracts`](./packages/lsp10-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp10-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp10-contracts) | LSP10 Received Vaults |
| [`@lukso/lsp12-contracts`](./packages/lsp12-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp12-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp12-contracts) | LSP12 Issued Assets |
| [`@lukso/lsp14-contracts`](./packages/lsp14-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp14-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp14-contracts) | LSP14 Ownable 2 Step |
| [`@lukso/lsp16-contracts`](./packages/lsp16-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp16-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp16-contracts) | LSP16 Universal Factory |
| [`@lukso/lsp17-contracts`](./packages/lsp17-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp17-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp17-contracts) | LSP17 Extensions Package |
| [`@lukso/lsp17contractextension-contracts`](./packages/lsp17contractextension-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp17contractextension-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp17contractextension-contracts) | LSP17 Contract Extension Package |
| [`@lukso/lsp20-contracts`](./packages/lsp20-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp20-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp20-contracts) | LSP20 Call Verification |
| [`@lukso/lsp23-contracts`](./packages/lsp23-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp23-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp23-contracts) | LSP23 Linked Contracts Factory |
| [`@lukso/lsp25-contracts`](./packages/lsp25-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/lsp25-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp25-contracts) | LSP25 Execute Relay Call |
| [`@lukso/universalprofile-contracts`](./packages/universalprofile-contracts) | [![npm version](https://img.shields.io/npm/v/@lukso/universalprofile-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/universalprofile-contracts) | Universal Profile |

## Installation

### npm
Expand Down
4 changes: 2 additions & 2 deletions packages/lsp0-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP0 ERC725Account
# LSP0 ERC725Account &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp0-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp0-contracts)

Package for the LSP0 ER725Account standard.
Package for the LSP0 ERC725Account standard.
6 changes: 2 additions & 4 deletions packages/lsp1-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# LSP Template
# LSP1 Universal Receiver &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp1-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp1-contracts)

This project can be used as a skeleton to build a package for a LSP implementation in Solidity (LUKSO Standard Proposal)

It is based on Hardhat.
Package for the LSP1 Universal Receiver standard.
6 changes: 2 additions & 4 deletions packages/lsp10-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# LSP Template
# LSP10 Received Vaults &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp10-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp10-contracts)

This project can be used as a skeleton to build a package for a LSP implementation in Solidity (LUKSO Standard Proposal)

It is based on Hardhat.
Package for the LSP10 Received Vaults standard.
2 changes: 1 addition & 1 deletion packages/lsp12-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP12 Issued Assets
# &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp12-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp12-contracts)

Package for the LSP12 Issued Assets standard.
2 changes: 1 addition & 1 deletion packages/lsp14-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP14 Ownable 2 Step
# LSP14 Ownable 2 Step &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp14-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp14-contracts)

Package for the LSP14 Ownable 2 Step standard.
2 changes: 1 addition & 1 deletion packages/lsp16-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP16 Universal Factory
# LSP16 Universal Factory &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp16-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp16-contracts)

Package for the [LSP16-UniversalFactory](https://github.com/lukso-network/LIPs/blob/main/LSPs/LSP-16-UniversalFactory.md) standard, contains a contract that allows deploying contracts on multiple chains with the same address.
2 changes: 1 addition & 1 deletion packages/lsp17-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# LSP17 Extensions Package
# LSP17 Extensions Package &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp17-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp17-contracts)

Package for the LSP17 Extensions, that includes the following extensions:

Expand Down
2 changes: 1 addition & 1 deletion packages/lsp17contractextension-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP17 Contract Extension Package
# LSP17 Contract Extension Package &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp17contractextension-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp17contractextension-contracts)

Package for the LSP17 Contract Extension
2 changes: 1 addition & 1 deletion packages/lsp1delegate-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# LSP1 Universal Receiver Delegate
# LSP1 Universal Receiver Delegate &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp1delegate-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp1delegate-contracts)

Smart contract implementations of LSP1 Universal Receiver Delegates
to register and manage:
Expand Down
2 changes: 1 addition & 1 deletion packages/lsp2-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP2 ERC725Y JSON Schema
# LSP2 ERC725Y JSON Schema &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp2-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp2-contracts)

Package for the LSP2 ERC725Y JSON Schema standard.
2 changes: 1 addition & 1 deletion packages/lsp20-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP20 Call Verification
# LSP20 Call Verification &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp20-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp20-contracts)

Package for the LSP20 Call Verification standard.
2 changes: 1 addition & 1 deletion packages/lsp23-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP23 Linked Contracts Factory
# LSP23 Linked Contracts Factory &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp23-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp23-contracts)

Package for the LSP23 Linked Contracts Factory.
2 changes: 1 addition & 1 deletion packages/lsp25-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP25 Execute Relay Call
# LSP25 Execute Relay Call &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp25-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp25-contracts)

Package for the LSP25 Execute Relay Call standard.
52 changes: 2 additions & 50 deletions packages/lsp3-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,51 +1,3 @@
# LSP Package Template
# LSP3 Profile Metadata &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp3-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp3-contracts)

This project can be used as a skeleton to build a package for a LSP implementation in Solidity (LUKSO Standard Proposal)

It is based on Hardhat.

## How to setup a LSP as a package?

1. Copy the `template/` folder and paste it under the `packages/` folder. Then rename this `template/` folder that you copied with the LSP name.

You can do so either:

- manually, by copying the folder and pasting it inside `packages` and then renaming it.
or
- by running the following command from the root of the repository.

```bash
cp -r template packages/lsp-name
```

2. Update the `"name"` and `"description"` field inside the `package.json` for this LSP package you just created.

3. Setup the dependencies

If this LSP uses external dependencies like `@openzeppelin/contracts`, put them under `dependencies` with the version number.

```json
"@openzeppelin/contracts": "^4.9.3"
```

If this LSP uses other LSP as dependencies, put each LSP dependency as shown below. This will use the current code in the package:

```json
"@lsp2": "*"
```

4. Setup the npm commands for linting, building, testing, etc... under the `"scripts"` in the `package.json`

5. Test that all commands you setup run successfully

By running the commands below, your LSP package should come up in the list of packages that Turbo is running this command for.

```bash
turbo build
turbo lint
turbo lint:solidity
turbo test
turbo test:foundry
```

6. Finally update the relevant information in the `README.md` file in the folder of the newly created package, such as the title at the top, some description, etc...
Package for the LSP3 Profile Metadata standard.
2 changes: 1 addition & 1 deletion packages/lsp4-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP4 Digital Asset Metadata
# LSP4 Digital Asset Metadata &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp4-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp4-contracts)

Package for the LSP4 Digital Asset Metadata standard.
2 changes: 1 addition & 1 deletion packages/lsp5-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP5 Received Assets
# LSP5 Received Assets &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp5-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp5-contracts)

Package for the LSP5 Received Assets standard.
2 changes: 1 addition & 1 deletion packages/lsp6-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP6 Key Manager
# LSP6 Key Manager &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp6-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp6-contracts)

Package for the LSP6 Key Manager standard, to enable granting multiple permissions to controllers.
2 changes: 1 addition & 1 deletion packages/lsp7-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP7 Digital Asset
# LSP7 Digital Asset &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp7-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp7-contracts)

Package for the LSP7 Digital Asset standard.
2 changes: 1 addition & 1 deletion packages/lsp8-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP8 Identifiable Digital Asset
# LSP8 Identifiable Digital Asset &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp8-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp8-contracts)

Package for the LSP8 Identifiable Digital Asset Standard.
2 changes: 1 addition & 1 deletion packages/lsp9-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# LSP9 Vault
# LSP9 Vault &middot; [![npm version](https://img.shields.io/npm/v/@lukso/lsp9-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/lsp9-contracts)

Package for the LSP9 Vault standard.
2 changes: 1 addition & 1 deletion packages/universalprofile-contracts/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Universal Profile
# Universal Profile &middot; [![npm version](https://img.shields.io/npm/v/@lukso/universalprofile-contracts.svg?style=flat)](https://www.npmjs.com/package/@lukso/universalprofile-contracts)

Smart Contract implementation for **Universal Profile**, a combination of LSP0 ERC725 Account and LSP3 Profile Metadata.

Expand Down
Loading