-
-
Default Landing Page
-
Support for dark mode
-
Account Transactions History
-
Create index Token
-
Create index Token Transaction
-
View Index Token Page
-
View Token Composition
-
View Token Composition
-
Approve Spend and Issue Index Token
-
Import token into the wallet
-
Token Redeem
-
Wallet balance after redemption
-
Issue 100 tokens from Account 2 (Token was created by Account 1)
-
Issue Index Token Transaction
-
Balance of Account 2 after Issue
-
Claim Streaming Fee
-
Account 1 claims 1% streaming fee from all holders of its index token
-
Claim Fee tx and fee transfer to Account 1
-
Balance of Account 2 after Account charged 1% fee
-
Token Redemption Transaction
Deployed URL : LIVE WEBSITE
🔥Token Forge 🔥
What is an index token?
An index token is like a basket that holds many different types of cryptocurrencies at once, allowing investors to invest in several cryptocurrencies through one token.
Inspiration
0️⃣ Polygon ZkEVM network currently does not have any Index Tokens.
💪 We took inspiration from TokenSets and recreated it without any fees plus returns to the creators of the index.
What it does
👨🍳 Lets users create & manage their own index tokens
🪙Mint Index Tokens in exchange for utility tokens.
💵 Redeem index tokens for underlying assets.
🤑 Creators can collect a custom streaming fee from 0 to 1% per year of the total holdings of the index created by them.
📈 People can list and buy these tokens on a decentralized exchange.
What's next for Token Forge
⛽Gas optimization
🔐 Security Auditing
Try the website on Polygon ZkEVM Testnet
1. Mint Test Tokens
- Click "Mint Utility Tokens" to mint test erc20's to interact with the protocol.
- Click the 'Mint Utility Tokens' button to start the transaction. 1000 USDC, WETH, WBTC, WMATIC, and AAVE will be sent to your wallet.
2. Try Creating a Token
- Enter the token name, its symbol, and adjust the sliders according to how you want each asset to be portioned.
- Click "Create Token" to create the Index Token's contract.
3. Take a look at your contracts
- If you are not redirected already, you should be on the "tokens" page and be able to view, interact with and share your tokens with others. If not, you can click "View All Indexes" on the home page. You should see your newly created tokens there, if not try giving your browser window a refresh.
4. Try Issuing Tokens
- Select your index token or token address shared with you to view its composition,
- Approve the spending of underlying / utility tokens. Accept all transactions (will be between 1-5 transactions) based on the number of underlying tokens that compose your index.
- Click "Issue Tokens" to get the index token in exchange for the underlying tokens.
- Upon successful Tx, you will have received your index on your wallet address
5. Try Claiming Streaming Fee
- Issue an index token on two or more different addresses
- Click the "Claim Fee" Button.
- Paste the index token address into the field
- Click the "Claim Fee" button to confirm taking the streaming fee. There should be 1% tokens burned from all wallets that hold that index and 1% minted to the index creator's address.
6. Try Redeeming Tokens
- Click "Redeem Tokens"
- Choose the address of the index token to redeem.
- Enter the amount of tokens you want to redeem from your holdings
- Press submit, you should see index tokens being burned, and underlying tokens being sent back to you.
7. Rebalancing
Since this design is designed for the mainnet, it will not work on testnet so we have disabled this feature for the purpose of this hackathon.
Screenshots (Features Demo)
Default Mode

Dark Mode

Account Transactions History

Create Token Page

Create Token Tx

List of My Indexed


View Index Token's Composition (Paste any valid index token address)

Issue Index Tokens in exchange for Utility Tokens

Import Token into the wallet

Redeem Index Token

Token redemption transaction on block explorer

Issue Index Token from Account 2

100 Tokens issued by Account 2 (MYEPIC is created by Account 1)

100 Tokens issuance transaction on block explorer by Account 2 (MYEPIC is created by Account 1)

Account 1 Claims 1% of total tokens as streaming fee that are issued by others

As you can see ~ 1 index token is being received by Account 1 since Account 2 issued 100 tokens and 1% was charged

Index Token with Account 2 after 1% streaming fee was charged

Built With
- ethers.js
- hardhat
- nextjs
- rainbowkit
- solidity
- tailwind
- typescript
- viem
- wagmi
Log in or sign up for Devpost to join the conversation.