docs.h.overview
A gas-light airdrop. Drag a recipients CSV into the setup wizard, preview it paginated with totals, and generate the Merkle root + claims file in the browser — no CLI. Recipients check eligibility and claim with one click; only they pay gas.
Airdrop / Claim turns a list of addresses + amounts into a live claim page. In the setup wizard you drop in a CSV, review it paginated with running totals, and the Merkle root and per-recipient claims file are generated entirely in the browser — then you deploy the distributor and fund it (prefilled with the airdrop total) from your wallet.
The claim page connects a wallet, instantly shows whether it's eligible and for how much, and claims in one click. The MerkleDistributor verifies the proof on-chain and records the claim, so each wallet can claim exactly once.
You fund the distributor with the total tokens once; each recipient pays the gas for their own claim. Everything on the page — title, token, symbol — is env-driven and brandable.
docs.h.included
- Next.js app (App Router, TypeScript, Tailwind)
- MerkleDistributor.sol + Hardhat
- In-browser Merkle list builder + claims.json generation (CLI script also included)
- Setup wizard with in-browser deploy and a fund step
- Dockerfile + docker-compose, README
docs.h.contracts
- MerkleDistributor.sol — a gas-light airdrop: recipients prove their (address, amount) against a Merkle root and claim exactly once; it tracks the claimed count and remaining balance, and the owner can sweep any leftovers after the campaign (OpenZeppelin SafeERC20 + MerkleProof).
docs.h.stack
docs.stackLine
docs.chainsLine
docs.h.quickstart
docs.quickstartP
unzip airdrop-claim.zip && cd airdrop-claim
npm install
npm run devdocs.quickstartUrl
docs.h.configure
docs.configureP
- docs.wizard.1
- docs.wizard.2
- docs.wizard.3
- docs.wizard.4
- docs.wizard.5
docs.configureP2
docs.h.customize
docs.h.branding
docs.brandingP
docs.brandingP2
docs.h.languages
docs.languagesP
docs.h.editing
docs.editingP
docs.h.configRef
docs.configRefP
- docs.configRef.1
- docs.configRef.2
docs.h.deployContracts
docs.deployContractsP
# compile + copy artifacts the app/wizard use
npm run compile
# deploy to the network in your .env (RPC_URL + DEPLOYER_PRIVATE_KEY)
npm run deploydocs.deployContractsP2
docs.h.deployApp
docs.h.vercel
- docs.vercel.1
- docs.vercel.2
- docs.vercel.3
docs.h.docker
docs.dockerP
# build + run; with no .env it opens the setup wizard
docker compose up --build
# once you have a .env, pass it in:
docker run --env-file .env -p 3006:3000 airdrop-claimdocs.dockerP2
docs.h.vps
docs.vpsP
npm install
npm run build
npm run start # serves the production builddocs.h.checklist
- docs.checklist.1
- docs.checklist.2
- docs.checklist.3
- docs.checklist.4
- docs.checklist.5
docs.h.support
docs.supportP