Smart Contracts

You can visit our Github to review our open-source contracts.

Tree

All trees that exist in the Treejer protocol are minted, owned, and can be transferred by this contract. Tree Contract has all functionality of ERC721 standard. Minting of trees by the other Treejer contracts that have access to it.

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.

TreeFactory

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

TreeAttribute

The contract generates random unique attributes for Genesis trees. Genesis trees are featured trees with generative 3D symbols. They're the first 10,000 trees being planted through Treejer protocol.

Planter

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

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. The auction process is similar to the foundation's contract.

IncrementalSell

The contract manages genesis tree sales. The price increases incrementally every 100 trees until tree #10000

RegularTree

RegularTree contract manages funding for the majority of trees in Treejer protocol.

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.

FundDistribution

The contract provides a dynamic model for funding allocation in Treejer protocol

PlanterFund

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