Technical Overview

Smart Contracts

9min

All smart contracts are now open-source and verified on Polygonscan. You can visit our Github to review the source codes or simply copy and paste the contract addresses on Polygonscan (Polygon's blockchain explorer).

Tree

All trees that exist in the Treejer protocol are minted, owned, or transferred by this contract. Tree contract has the functionality of ERC721 standard.

🔗0x3aBbc23F3303EF36fd9f6CEC0e585b2C23e47FD9

AccessRestriction

This contract manages roles and their access to certain features. It has a feature to pause the system in the case of high-impact issues or attacks.

🔗0x33beda226e181177cc4836a75096788bf64965c3

TreeFactory

The contract manages trees status, updates, and planting. It handles the tree's existence, age, descriptions, images, updates, planting process, and growing stages.

🔗0xbA1aC93A33977ca0614Dd314ef79F46DB3CCe045

TreeAttribute

The contract generates random unique attributes for Genesis trees. Genesis trees have generative 3D symbols and are the first 10,000 trees being planted through Treejer protocol.

🔗0x1596d52B938d090A04Cc8572112C47E648b12b85

Planter

The contract handles planters profile data, planting status, referral data, and membership verification. The contract holds both organizational and independent planters.

🔗0x888D98dbe55E543fcE91990f379FA094161946E4

Auction

Tree #0-10 are going to be auctioned. The contract manages auction process for these trees. Bidding, settling and timing mechanisms are implemented in this contract.

🔗0xd2C5b536631173789f74730254F3a9Ab1a1D69C4

IncrementalSale

The contract manages funding for mintable Genesis trees (trees #101 to 10000). The price increases incrementally every 100 trees until tree #10000.

🔗0x288917a9ef50D74AFe2C73390EF6A5a92eFcf8D2

RegularSale

RegularSale contract manages funding for the majority of trees in Treejer protocol (Regular Trees)

🔗0xFBDaB242bc3e439e0CF59F5E8C3BaF5A8ec38475

DaiFunds and WethFunds

The contract aims to provide a secure and transparent infrastructure for financial activities of Treejer from getting funds to safely store and view of funds.

WETH 🔗0x8BCAb975B24343fe4Fb40cE5713021e56feB5b13

DAI 🔗0x13e7d912B887b72510Fc838aE5f2e13064B82e57

Allocation

The contract provides a dynamic model for setting allocation of funds in Treejer protocol. It manages the amount each stakeholder receives.

🔗0x98a8051EFEcac506858b4b4bf1703B2BFa5b4418

PlanterFund

The contract handles the payments for planters and rural ambassadors. The contract distributes funds to planters after receiving periodical updates from trees

🔗0xE8301d7dE8f8DC90091D82b7e969086404bFf663

HonoraryTree

It manages listing and distribution of honorary trees. (Tree #11-100)

🔗0x1678eB11Be6dE39D8971fBdBdfcF260659086683

WhitelistPayMaster

A GSN paymaster is a contract that actually pays for a relayed request. A whitelist paymaster accepts only request from specific, known addresses. So it is protected from attacks. TreeFactory in one of the address we have whitelisted, so that planters can send transaction without paying gas fees.

🔗0x0A7d33FcEB4808D134ce99b334e3C8C48984E4fD

TreeBox

Using TreeBox contract, you can create one or multiple Treeboxes at the same time for a list of recipients and each recipient can claim Treebox for a given address. Each Treebox contains a number of claimable trees.

🔗0x7F8D35feA19bBc17C55Da32E5D50B2509670C9d3