🌎
Liquid Earth
  • What is Liquid Earth?
  • Smart Contracts
    • Overview
      • Integrated Project Intro and Business Proposition
      • Fantom Blockchain
      • The Role of Digital Assets
      • Token Supply
    • Smart Contracts Overview
      • Roles and Access Control within Liquid Earth Contracts
      • Fees
      • Payment System
      • Deployment Sequence
    • Smart Contract Repos
      • FantomAddressRegistry.sol
      • FantomArtion.sol
      • FantomAuction.sol
      • FantomBundleMarketplace.sol
      • FantomMarketplace.sol
      • FantomPriceFeed.sol
      • FantomTokenRegistry.sol
      • Verifiable.sol
Powered by GitBook
On this page
  • Smart contracts for Fantom Artion Marketplace
  • Roles
  • Technical Requirements
  1. Smart Contracts

Overview

PreviousWhat is Liquid Earth?NextIntegrated Project Intro and Business Proposition

Last updated 7 months ago

The project has two roles:

  • Admin: contract owner of contracts. An admin can control platform fee and its recipient, update preMint Digital Asset status and contract addresses. They can pause auction contract, change min bid increment.

  • User: can mint, burn, transfer, sell, buy, auction, and bid their Digital Assets.

This project has been developed with language, using as a development environment. Javascript is the selected language for testing and scripting. In addition, ’s libraries are used in the project. In the project folder, the following structure is found:

β”œβ”€β”€ contracts
β”‚ β”œβ”€β”€ interfaces
β”‚ β”‚ └── IBouncerKYC.sol
| | └── IFantomAddressRegistry.sol
| | └── IFantomArtion.sol
| | └── IFantomAuction.sol
| | └── IFantomBundleMarketplace.sol
| | └── IFantomMarketplace.sol
| | └── IFantomPriceFeed.sol
| | └── IFantomTokenRegistry.sol
β”‚ β”œβ”€β”€ mocks
β”‚ └── FantomAddressRegistry.sol
| └── FantomArtion.sol
| └── FantomAuction.sol
| └── FantomBundleMarketplace.sol
| └── FantomMarketplace.sol
| └── FantomPriceFeed.sol
| └── FantomTokenRegistry.sol
| └── KYC.sol
| └── Verifiable.sol
β”œβ”€β”€ scripts
β”œβ”€β”€ tasks
β”œβ”€β”€ test
β”œβ”€β”€ hardhat.config.ts
β”œβ”€β”€ package.json
β”œβ”€β”€ package-lock.json
└──  README.md

Start with README.md to find all basic information about project structure.

Inside the ./contracts folder,

  • FantomArtion: mint/ burn Digital Assets.

  • FantomMarketplace: sell/ buy Digital Assets.

  • FantomAuction: auctioning Digital Assets.

  • FantomBundleMarketplace: sell/ buy bundle Digital Assets.

  • FantomAddressRegistry: update project's contracts.

  • FantomPriceFeed: add/ update ERC20 price.

  • FantomTokenRegistry: add/ remove tokens used in the project.

  • Verifiable: the library contains a modifier which checks KYC status. the ./interfaces folder provide all contracts interfaces. the ./mock folder provide contracts which is used for testing.

In the ./tests folder, each file provide the tests of the different methods of the all project contracts, in Javascript.

The project contracts deployment can be found in ./scripts.

The project configuration is found in hardhat.config.ts, where dependencies are indicated. Mind the relationship of this file with .env. More information about this file’s configuration can be found in the Hardhat Documentation.

Smart contracts for Fantom Artion Marketplace
Roles
Technical Requirements
Solidity
Hardhat
OpenZeppelin