https://github.com/functionland/contracts-ui
this is the portal to interact with smart contracts of Fula network
https://github.com/functionland/contracts-ui
Last synced: 13 days ago
JSON representation
this is the portal to interact with smart contracts of Fula network
- Host: GitHub
- URL: https://github.com/functionland/contracts-ui
- Owner: functionland
- Created: 2025-12-24T06:57:00.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-12-25T06:24:56.000Z (about 1 month ago)
- Last Synced: 2025-12-26T06:46:59.992Z (about 1 month ago)
- Language: TypeScript
- Homepage: http://claim-ui.fula.network/
- Size: 206 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FULA Token Vesting Dashboard
A decentralized application for managing and claiming vested FULA tokens. Built with React, Vite, and wagmi for seamless wallet integration.
## Features
- **Token Vesting**: View and claim vested tokens on Ethereum Mainnet and Base
- **Airdrop Claims**: Claim airdrop allocations on IoTeX and Base
- **Testnet Mining**: Claim testnet mining rewards on SKALE Europa
- **Multi-Chain Support**: Works with Ethereum Mainnet, Base, SKALE Europa, and IoTeX
- **Mobile & Desktop**: Works on both desktop and mobile browsers with wallet extensions
## Supported Chains
- Ethereum Mainnet
- Base
- SKALE Europa
- IoTeX
## Getting Started
### Prerequisites
- Node.js 18+
- npm or yarn
- A Web3 wallet (MetaMask, Coinbase Wallet, etc.)
### Installation
```bash
# Clone the repository
git clone https://github.com/functionland/claim-ui.git
cd claim-ui
# Install dependencies
npm install
# Start development server
npm run dev
```
### Building for Production
```bash
npm run build
```
The built files will be in the `dist` directory.
## Deployment
This project is configured for GitHub Pages deployment. Simply push to the `main` branch and the GitHub Actions workflow will automatically build and deploy.
### Manual Deployment
1. Build the project: `npm run build`
2. Deploy the `dist` folder to any static hosting service
### GitHub Pages Configuration
1. Go to your repository settings
2. Navigate to "Pages"
3. Set source to "GitHub Actions"
4. Push to main branch to trigger deployment
## Project Structure
```
src/
├── components/ # React components
│ ├── admin/ # Admin panel components
│ ├── common/ # Shared components (ConnectButton, etc.)
│ └── vesting/ # Vesting-related components
├── config/ # Configuration files
│ ├── abis.ts # Contract ABIs
│ ├── chains.ts # Chain configurations
│ ├── constants.ts # App constants
│ └── contracts.ts # Contract addresses
├── contexts/ # React contexts
├── hooks/ # Custom React hooks
├── pages/ # Page components
├── types/ # TypeScript types
└── utils/ # Utility functions
```
## Smart Contracts
The dashboard interacts with the following contracts:
- **Token Contract**: ERC20 FULA token
- **Distribution Contract**: Token vesting/distribution
- **Airdrop Contract**: Airdrop claims
- **Testnet Mining Contract**: Testnet mining rewards
- **Staking Contract**: Token staking
- **Storage Pool Contract**: Storage pool management
- **Reward Engine Contract**: Reward calculations
## Wallet Connection
This app uses wagmi with injected wallet connectors, supporting:
- MetaMask
- Coinbase Wallet
- Any browser wallet that injects the ethereum provider
No WalletConnect project ID is required - the app works with browser-based wallets out of the box.
## Development
```bash
# Start dev server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
# Lint code
npm run lint
```
## License
MIT License
## Support
For support, please contact hi@fx.land