# Creating an example Smart Contract

This guide outlines the process of generating smart contracts automatically using OpenZeppelin Wizard. The generated smart contract can be directly opened in Remix with the "Open in Remix" button or copied and pasted into any IDE of your choice.

## Initial Steps

To start, go to the OpenZeppelin Wizard in your web browser. You'll see two options: Solidity Wizard and Cairo Wizard.

Choose from the following options to create ready-to-use smart contract code in Solidity (for Ethereum Virtual Machine, EVM, chains) or Cairolang (for Starknet):

→ ERC20: to create an ERC-20 token contract \
→ ERC721: to create an NFT contract \
→ ERC1155: to create an ERC-1155 token contract \
→ Governor: to set up a DAO \
→ Custom: to write a personalized smart contract

## Creating an NFT Contract

As an example, let’s create a Mintable, ERC721 NFT contract and specify its license.

### Select the ERC721 Tab

Enter the Name and Symbol for your NFT in the respective fields.

On the left, use the checkboxes to add features to your token:

* Check Mintable
* Check Auto Increment Ids for unique NFT minting

Choose either the default MIT license or enter a different license.

Each selected feature will automatically generate corresponding lines of code.

Your Contract is Ready.

The process results in a complete NFT token contract in Solidity. You can now use this code in your preferred IDE or open it in Remix.

The following figure shows the automatically generated NFT smart contract code.

<figure><img src="/files/NDOgNNc2qwn7hhUbJjTr" alt=""><figcaption></figcaption></figure>

## Deploy Contract

Please keep up with the updates to receive news about data required to connect to Prom

\ <br>

\ <br>

\ <br>

\ <br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://prom.gitbook.io/prom/start-building/creating-an-example-smart-contract.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
