A full-stack Web3 application for creating, managing, and trading ERC20 tokens on the QIE Testnet. TokeDex provides an intuitive interface for businesses and individuals to launch their own tokens and participate in decentralized finance.
Demo VideoLink as requested by QIE Blockchain Hackathon : https://youtu.be/3n-PIS4Vhdk
- Direct Token Creation: Deploy custom ERC20 tokens instantly using our TokenFactory contract
- Token Dashboard: View and manage all your created tokens in one place
- Wallet Integration: Seamless MetaMask and Web3 wallet support
- Token Import: Import existing tokens by contract address
- Token Swapping: Trade tokens using an automated market maker (AMM) with 0.3% fees
- Liquidity Pools: Create and manage liquidity pools for token pairs
- Pools Explorer: Discover all available trading pools with reserves and price information
- Real-time Pricing: Live price calculations based on pool reserves
- Beautiful UI: Modern, responsive design with smooth animations
- Network Switching: Easy QIE Testnet configuration
- QIE Faucet: Integrated faucet for obtaining test tokens
- Transaction Tracking: Real-time transaction status and confirmations
- Solidity
^0.8.30 - Hardhat 3 for development and testing
- OpenZeppelin contracts for security
- Deployed Contracts:
- TokenFactory:
0xfa1a836DB0307bd214E8f3b3672b47d53491a29C - SimpleDEX:
0xe6E42ee1E5e8BB0dc947fC40079ae22370200048
- TokenFactory:
- React
^19with TypeScript - Vite
^7for fast development - wagmi
^3for Web3 interactions - Framer Motion for animations
- Tailwind CSS for styling
- Lucide React for icons
TokeDex/
βββ contracts/ # Smart contract development
β βββ contracts/
β β βββ TokenFactory.sol # ERC20 token factory
β β βββ SimpleDEX.sol # Decentralized exchange
β β βββ TokenFaucet.sol # Test token faucet
β βββ scripts/
β β βββ deploySimpleDEX.js
β βββ test/
β βββ hardhat.config.ts
β
βββ frontend/ # React application
β βββ src/
β β βββ components/
β β β βββ DirectTokenCreator.tsx
β β β βββ MyTokensDashboard.tsx
β β β βββ SimpleDEXInterface.tsx
β β β βββ PoolsExplorer.tsx
β β β βββ PoolCard.tsx
β β β βββ ...
β β βββ config/
β β β βββ wagmi.ts
β β β βββ networkConstants.ts
β β βββ App.tsx
β βββ package.json
β
βββ README.md
βββ HOW_TO_USE_TOKEDEX.md
βββ DIRECT_TOKEN_CREATION.md
- Node.js v18+ and npm
- MetaMask or compatible Web3 wallet
- QIE Testnet configuration
git clone https://github.com/ChainSpectra/TokeDex.git
cd TokeDexcd contracts
npm install
# Compile contracts
npx hardhat compile
# Run tests
npx hardhat test
# Deploy to QIE Testnet (requires .env with PRIVATE_KEY)
npx hardhat run scripts/deploySimpleDEX.js --network qieTestnetcd frontend
npm install
# Start development server
npm run dev
# Build for production
npm run buildAdd QIE Testnet to MetaMask:
- Network Name: QIE Testnet
- RPC URL:
https://rpc1testnet.qie.digital - Chain ID:
1983 - Currency Symbol: QIE
- Block Explorer:
https://testnet.qie.digital
Visit the QIE Faucet: https://www.qie.digital/faucet
- Connect your wallet to QIE Testnet
- Click "Create Token" in the navigation
- Fill in token details (name, symbol, supply, decimals)
- Confirm transaction and pay gas fees
- Your token is deployed! Add it to your wallet
- Navigate to "My Tokens" β Click "Trade"
- Swap Tab: Exchange tokens instantly
- Liquidity Tab: Create pools or add liquidity
- Pools Tab: Explore all available trading pairs
- Select token pair (e.g., YourToken/WQIE)
- Enter amounts for both tokens
- Create pool or add to existing pool
- Receive LP tokens representing your share
- How to Use TokeDex - Complete user guide
- Direct Token Creation - Token creation details
- Pools Explorer - Pools feature documentation
- Live App: https://tokedex.vercel.app (or your deployment)
- QIE Testnet Explorer: https://testnet.qie.digital
- QIE Faucet: https://www.qie.digital/faucet
- TokenFactory Contract: 0xfa1a836DB0307bd214E8f3b3672b47d53491a29C
- SimpleDEX Contract: 0xe6E42ee1E5e8BB0dc947fC40079ae22370200048
Contracts (contracts/.env):
PRIVATE_KEY=your_wallet_private_key
QIE_TESTNET_RPC_URL=https://rpc1testnet.qie.digitalFrontend (optional):
VITE_WALLET_CONNECT_PROJECT_ID=your_project_id# Smart contract tests
cd contracts
npx hardhat test
# Frontend build test
cd frontend
npm run build- Deploys separate ERC20 contracts for each token
- Customizable name, symbol, supply, and decimals
- Instant deployment with gas-efficient contracts
- Full ERC20 standard compliance
- Automated Market Maker (AMM) with constant product formula (x * y = k)
- 0.3% trading fee
- Slippage protection
- Pool enumeration for discovery
- Future-ready for advanced analytics
- View all available liquidity pools
- See reserves and current prices
- Navigate directly to swap or add liquidity
- Real-time data from blockchain
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is part of the ChainSpectra ecosystem.
- Built on QIE Blockchain
- Powered by OpenZeppelin contracts
- UI components from Lucide React
- Animations by Framer Motion
Ready to tokenize your business? Start creating tokens on TokeDex! π