Practical overview
When it fits
Consider it when a project needs to model freelance service time as a transferable NFT with defined availability and purchase conditions. The documentation also proposes reservations, asset ownership and on-chain agreements as possible extensions.
Who it is for
- Freelancers who want to represent and offer service time as NFTs.
- Organizations recruiting people for specialized needs.
- Developers interested in integrating or extending the project's time-token contracts.
Documented uses
- Mint a token describing a service, its availability window, duration and royalty terms.
- Purchase a time NFT and redeem it through the collection contract.
- Change a token's price, payment currency, sale status or permitted buyer.
- Explore time NFTs as a basis for contribution attestations or other proposed applications.
Requirements & limits
- The documented reference contract is an ERC-721 collection, with Polygon named as its reference deployment.
- Contract development uses Hardhat; TypeChain provides a typed ethers SDK, and Web3React handles wallet connections and transaction signing.
- The repository describes both a contract-level buying flow and a redeem function; it does not provide a documented step-by-step user guide here.
- Reservations, asset ownership and autonomous on-chain agreements are described as potential extensions, not established ready-made features.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Mint a time NFT with the collection contract
Create a token representing a freelance service and its availability.
Before you start
- Access to the NonFungibleTimeCollection contract on its reference Polygon deployment.
- Values for the NFT name, description, work, availability window, duration in seconds, and royalty basis points.
Steps
Prepare the mint parameters: name, description, work, availabilityFrom, availabilityTo, duration, and royaltyBasisPoints.
Call the contract’s mint function with those parameters.
Record the returned tokenId for later reference.
Expected outcome
The contract returns the tokenId of the newly minted time NFT.
Guide limitations
- The repository does not provide transaction instructions, wallet setup steps, or a deployed contract address.
- The mint function signature uses a parameter named work, while its parameter table describes category; confirm the contract interface before calling it.
- Availability bounds are Unix timestamps; zero represents no bound. Duration is measured in seconds.
Set a time NFT’s buying conditions
Configure a token’s price, payment currency, sale status, and buyer restriction.
Before you start
- A tokenId for the time NFT.
- Access to the NonFungibleTimeCollection contract and the relevant account able to change that token’s buying conditions.
- An ERC-20 currency address or address(0) for native currency, a price, an allowedBuyer address, and a forSale value.
Steps
Choose the tokenId and payment currency; use address(0) to specify native currency.
Call changeTokenBuyingConditions with the tokenId, currency, price, allowedBuyer, and forSale values.
Use address(0) for allowedBuyer if everyone should be able to buy the token.
Expected outcome
The token’s buying conditions are changed according to the supplied currency, price, buyer restriction, and sale status.
Guide limitations
- The documentation describes the function’s purpose and parameters but does not give transaction-submission instructions or specify authorization details for this function.
- The documentation does not define price units or provide a deployed contract address.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 18 October 2026
- Original website title
- WeAreNewt/NonFungibleTime · Official homepage title · retained in its source language

