Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
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
3 changes: 2 additions & 1 deletion .prettierrc
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@
"singleQuote": true,
"trailingComma": "none",
"bracketSpacing": true,
"arrowParens": "avoid"
"arrowParens": "avoid",
"plugins": ["prettier-plugin-sh"]
}
161 changes: 95 additions & 66 deletions bun.lock

Large diffs are not rendered by default.

13 changes: 8 additions & 5 deletions docs/about-settlemint/4_components.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The first step to building anything on SettleMint is to [create an
application](../../using-platform/create-an-application). You can think of an
application as the collection of resources that you need to build your
blockchain application. This includes a blockchain network, smart contracts,
middleware, storage, and integrations.{' '}
middleware, storage, integrations, and insights.{' '}

## Add a Blockchain Network and Node

Expand Down Expand Up @@ -73,8 +73,9 @@ application.
/>
Blockchain applications produce data that lives on the blockchain, but we need
to be able to access that data in order to use it. Creating a
[middleware](../../using-platform/middleware/) allows us SettleMint currently
offers two middleware services: The Graph and Smart Contract Portal Middleware.{' '}
[middleware](../../using-platform/middleware/) allows us to do so. SettleMint
currently offers three middleware services: The Graph, Smart Contract Portal
Middleware and Firefly Fabconnect.{' '}

## Add Storage

Expand Down Expand Up @@ -113,5 +114,7 @@ Your blockchain application may require custom components or frontend applicatio

## Getting Started

Now that you have a better idea of each of the components that make up SettleMint, try deploying
your first application with our [Hello World Guide](../../launch-platform/managed-cloud-deployment/quickstart/).
Ready to build? Head over to:

- [Building with SettleMint](using-platform/1_add-a-network-to-an-application.md) for detailed platform instructions
- [Developer Guides](developer-guides/guide-library.mdx) for step-by-step tutorials on common use cases
2 changes: 1 addition & 1 deletion docs/account-billing/add-a-client.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This guide explains how to add a client's organization to your organization as a

:::tip

If you are not a SettleMint partner, this guide may not be useful for you. For general account and organization information, visit the [Create an Account](../launch-platform/managed-cloud-deployment/2_create-an-account.md) or [About Organization](../launch-platform/managed-cloud-deployment/3_about-organizations.md) sections.
If you are not a SettleMint partner, this guide may not be useful for you. For general account and organization information, visit the [Create an Account](../launch-platform/managed-cloud-deployment/1_create-an-account.md) or [About Organization](../launch-platform/managed-cloud-deployment/2_about-organizations.md) sections.

Learn about the SettleMint Partner program and how to become a partner on our [Partner Program Page](https://www.settlemint.com/partner-program).

Expand Down
2 changes: 1 addition & 1 deletion docs/account-billing/join-a-partner.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This guide explains how to transfer your organization to a SettleMint partner. T

:::tip

If you have not been in contact with a SettleMint partner, this guide may not be useful for you. For general account and organization information, visit the [Create an Account](../launch-platform/managed-cloud-deployment/2_create-an-account.md) or [About Organization](../launch-platform/managed-cloud-deployment/3_about-organizations.md) sections.
If you have not been in contact with a SettleMint partner, this guide may not be useful for you. For general account and organization information, visit the [Create an Account](../launch-platform/managed-cloud-deployment/1_create-an-account.md) or [About Organization](../launch-platform/managed-cloud-deployment/2_about-organizations.md) sections.
:::

## Understanding the Client-Partner Model
Expand Down
71 changes: 3 additions & 68 deletions docs/blockchain-guides/0_Ethereum/5_ethereum-integration-tools.md
Original file line number Diff line number Diff line change
@@ -1,70 +1,5 @@
# Smart contracts IDE
# Smart Contract Sets

The SettleMint IDE is the only tool you need to edit the smart contract set template you have selected, or **write** your own brand **new** smart contracts. The programming language used for your Ethereum smart contracts is Solidity.
You can launch a Smart Contract Set to significantly accelerate the development of your smart contracts.

## Using the IDE

When you open the IDE, you land in an instance of Visual Studio Code similar to the image below.

![ide](../../../static/img/blockchain-guide/IDE.png)

On the left, in the **“Explorer”** panel, you can see all the folders and files related to the smart contract set.

The smart contract files are located in the **“contracts”** folder. You can edit them, or use them as they are if the template fits all your needs.

The **“deploy”** folder contains the scripts that enable the deployment of the smart contract set on the blockchain. You might have to edit these scripts if you add new arguments to the constructor of your smart contract.

The **“test”** folder contains a script that lets you test the functionalities of your smart contracts. You can add new ones if you edit the template. Do not hesitate to go through the test cases as they provide valuable information on how to use your smart contracts.

The **subgraph** folder holds all the files needed to index your smart contract using the Graph protocol.

## Scripts

Several scripts are defined in `package.json` to help you use the smart contract set:

- **lint** to lint your smart contracts, i.e. find the stylistic errors.
- **compile** to compile your smart contracts.
- **test** to run the test script in the “test” folder.
- **smartcontract:deploy** to deploy the smart contract set on the blockchain.
- **smartcontract:deploy:reset** to deploy from scratch after a first deployment.
- **graph:config** to create the middleware configuration file.
- **graph:compile** to compile the middleware files.
- **graph:codegen** to create the middleware schema.
- **graph:build** to build the middleware.
- **graph:deploy** to deploy the middleware.
- **graph:all** to execute all the graph scripts in one command.

:::warning Note

To execute the scripts related to the Graph middleware, you need a middleware instance in your app.

:::

You can execute these scripts in the terminal integrated with the IDE by running `yarn name-of-script`.
For example, to run the `smartcontract:deploy` task using the terminal, open a new terminal (ctrl + shift + \`) and run the command`yarn smartcontract:deploy`.

## Private key

To be able to deploy your smart contract set on the blockchain you need to have a private key enabled on your node to sign the transaction, and you need to fund this key with Ether to cover the cost for the transaction. You can create a private key and fund it in the **Private keys section** of your application. [More about private keys.](../../using-platform/12_private-keys.md)

## Template library

Every instance of the IDE contains a set of pre-built smart contract templates. These templates are easily customizable to match your specific use case. [Discover the smart contract set templates for Ethereum.](../0_Ethereum/Template-library/1_ethereum-erc-20.md)

## Generative AI plugin

The integration of an OpenAI GPT plugin into the Smart Contract IDE of the SettleMint platform brings forth significant advantages for the fast development of new smart contracts. Generative AI technology empowers developers by providing them with automated code suggestions, smart contract templates, and code completion capabilities. This accelerates the development process by reducing manual effort and improving code efficiency.

Additionally, the interactive debugging and explanation features offered by the GPT plugin greatly benefit developers of all skill levels. Beginners can leverage the plugin’s explanations to understand complex concepts, improve their coding skills, and gain insights into best practices. Experienced developers can utilize the debugging features to quickly identify and resolve issues, leading to more robust and error-free smart contracts.

Overall, the integration of the OpenAI GPT plugin into the SettleMint platform’s Smart Contract IDE combines the power of generative AI and interactive debugging to enhance productivity, code quality, and learning opportunities for developers in the blockchain space.

You can find this plugin in the sidebar (magic lamp icon), in context menu and the action panel. The first time you use the plugin you will get asked for an OpenAI API key. Depending on your OpenAI API access you can use the default GPT 3.5 model or the GPT 4 model which is slower, but more accurate. Check out the settings in the IDE to configure this and other settings (like using your own Azure GPT service)

Here are some prompts to get you started:

- Write a Solidity ERC20 token representing a bond, based on OpenZeppelin. Include a bond repayment and coupon payments.
- Write a Solidity ERC721 token representing real estate, based on OpenZeppelin and allow fractional ownership of this NFT in the form of ERC20 tokens.
- Write The Graph indexing code that indexes an ERC721 token on the Ethereum Mainnet.

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/-e4weLqbYjk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
[Learn here how to use Smart Contract Sets to deploy your smart contracts](../../using-platform/15_dev-tools/0_code-studio/1_smart-contract-sets/1_smart-contract-sets.md).
Original file line number Diff line number Diff line change
@@ -1,70 +1,5 @@
# Smart contracts IDE
# Smart Contract Sets

The SettleMint IDE is the only tool you need to edit the smart contract set template you have selected, or **write** your own brand **new** smart contracts. The programming language used for your Polygon zkEVM smart contracts is Solidity.
You can launch a Smart Contract Set to significantly accelerate the development of your smart contracts.

## Using the IDE

When you open the IDE, you land in an instance of Visual Studio Code similar to the image below.

![ide](../../../static/img/blockchain-guide/IDE.png)

On the left, in the **“Explorer”** panel, you can see all the folders and files related to the smart contract set.

The smart contract files are located in the **“contracts”** folder. You can edit them, or use them as they are if the template fits all your needs.

The **“deploy”** folder contains the scripts that enable the deployment of the smart contract set on the blockchain. You might have to edit these scripts if you add new arguments to the constructor of your smart contract.

The **“test”** folder contains a script that lets you test the functionalities of your smart contracts. You can add new ones if you edit the template. Do not hesitate to go through the test cases as they provide valuable information on how to use your smart contracts.

The **subgraph** folder holds all the files needed to index your smart contract using the Graph protocol.

## Scripts

Several scripts are defined in `package.json` to help you use the smart contract set:

- **lint** to lint your smart contracts, i.e. find the stylistic errors.
- **compile** to compile your smart contracts.
- **test** to run the test script in the “test” folder.
- **smartcontract:deploy** to deploy the smart contract set on the blockchain.
- **smartcontract:deploy:reset** to deploy from scratch after a first deployment.
- **graph:config** to create the middleware configuration file.
- **graph:compile** to compile the middleware files.
- **graph:codegen** to create the middleware schema.
- **graph:build** to build the middleware.
- **graph:deploy** to deploy the middleware.
- **graph:all** to execute all the graph scripts in one command.

:::warning Note

To execute the scripts related to the Graph middleware, you need a middleware instance in your app.

:::

You can execute these scripts in the terminal integrated with the IDE by running `yarn name-of-script`.
For example, to run the `smartcontract:deploy` task using the terminal, open a new terminal (ctrl + shift + \`) and run the command`yarn smartcontract:deploy`.

## Private key

To be able to deploy your smart contract set on the blockchain you need to have a private key enabled on your node to sign the transaction, and you need to fund this key with Ether to cover the cost for the transaction. You can create a private key and fund it in the **Private keys section** of your application. [More about private keys.](../../using-platform/12_private-keys.md)

## Template library

Every instance of the IDE contains a set of pre-built smart contract templates. These templates are easily customizable to match your specific use case. [Discover the smart contract set templates for Polygon zkEVM.](../10_Polygon-zkEVM/Template-library/1_polygon-zkevm-erc-20.md)

## Generative AI plugin

The integration of an OpenAI GPT plugin into the Smart Contract IDE of the SettleMint platform brings forth significant advantages for the fast development of new smart contracts. Generative AI technology empowers developers by providing them with automated code suggestions, smart contract templates, and code completion capabilities. This accelerates the development process by reducing manual effort and improving code efficiency.

Additionally, the interactive debugging and explanation features offered by the GPT plugin greatly benefit developers of all skill levels. Beginners can leverage the plugin’s explanations to understand complex concepts, improve their coding skills, and gain insights into best practices. Experienced developers can utilize the debugging features to quickly identify and resolve issues, leading to more robust and error-free smart contracts.

Overall, the integration of the OpenAI GPT plugin into the SettleMint platform’s Smart Contract IDE combines the power of generative AI and interactive debugging to enhance productivity, code quality, and learning opportunities for developers in the blockchain space.

You can find this plugin in the sidebar (magic lamp icon), in context menu and the action panel. The first time you use the plugin you will get asked for an OpenAI API key. Depending on your OpenAI API access you can use the default GPT 3.5 model or the GPT 4 model which is slower, but more accurate. Check out the settings in the IDE to configure this and other settings (like using your own Azure GPT service)

Here are some prompts to get you started:

- Write a Solidity ERC20 token representing a bond, based on OpenZeppelin. Include a bond repayment and coupon payments.
- Write a Solidity ERC721 token representing real estate, based on OpenZeppelin and allow fractional ownership of this NFT in the form of ERC20 tokens.
- Write The Graph indexing code that indexes an ERC721 token on the Ethereum Mainnet.

<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/-e4weLqbYjk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
[Learn here how to use Smart Contract Sets to deploy your smart contracts](../../using-platform/15_dev-tools/0_code-studio/1_smart-contract-sets/1_smart-contract-sets.md).
Loading