Skip to content

maestro-org/smart-contracts

Maestro Logo

Maestro Smart Contract Marketplace Library

Maestro's Managed Contracts API offers developer-friendly endpoints for ready-to-deploy smart contracts. The fully managed service aims to improve developer experience and bootstrap Dapp development on Cardano.

This repository is reponsible for housing all of the smart contracts that are (or will soon be) integrated into Maestro's Managed-contract API. The first step of integration is to add your contract to the marketplace. To do this, follow the steps below!

Contributing

To add a smart contract to the Smart Contracts Marketplace, take the following steps:

  1. Create a new directory in contracts/, named after the contract (e.g. linear-vesting).
  2. Add a meta.json file in that directory, following this template. If you choose to use a logo, you can include it in this directory as well.
  3. Add the smart contract source code in the same directory, add it as a Git submodule, or simply paste the public repository URL. NOTE: The smart contract source code must be open sourced to be included in the Marketplace.
  4. Open a Pull Request with these changes. Ping Varderes, Maestro CTO to potentially have it fast tracked!
  5. Shortly after the PR is merged, the contract will be available in the Plug-and-Play Marketplace!

Additional steps for managed contracts

If the the contract you're contributing is managed by Maestro or another provider, feel free to:

  1. Contribute a helper server to interact with the provider's API endpoints corresponding to the contract.
  2. Contribute a user-facing client to interact with the contract via the server.

Meastro welcomes all contributors! Please see our contributing guidelines and code of conduct.

Parameter Description Optional (Y/N) Example
contract Name of the smart contract N Linear Vesting
summary Short summary of the smart contract N Lock tokens with a linear vesting schedule
description Detailed descripton of how the smart contract works N Lock tokens with a linear vesting schedule and control the release of tokens over time
project:name Name of the project or author of the contract N Anastasia Labs
project:website Project website or author social link N https://anastasialabs.com/
project:logo_64x64 Public URI the 64x64 logo N https://raw.githubusercontent.com/maestro-org/ispo-metadata/main/maestro-preprod/maestro-logo64x64.png
versions:version Contract Plutus version Y v1, v2
versions:compiler Smart contract framework used to build the contract N Plutus, Plutarch, Aiken
versions:royalty Does the contract author charges a contract fee N true or false
versions:repository Contract github repository link N https://github.com/Anastasia-Labs/direct-offer/
versions:script_hash Contract script hash Y 7045237d1eb0199c84dffe58fe6df7dc5d255eb4d418e4146d5721f8
versions:audit:provider Audit firm name N Tweag
versions:audit:report Audit report link Y https://github.com/CatspersCoffee/contracts/blob/main/dex/audit-report/MinSwap-Jan31.pdf
versions:audit:date Audit report publish date Y 2021-01-31
versions:api Maestro API availalbe for this contract Y https://docs.gomaestro.org/ManagedContracts/LinearVesting/Introduction
versions:client Client side code for interacting with contract Y https://github.com/maestro-org/smart-contract-clients/tree/main/src/stories/LinearVesting
versions:backend Backend code for interacting with Maestro API endpoints Y https://github.com/maestro-org/smart-contract-servers/linear-vesting

Documentation