One idea
A testnet deploy is proof that your contract can leave your laptop. Treat it like a small production release: clean config, no leaked secrets, clear notes.
What counts
For this track, you need either a testnet deployment address or a deployment script. A stronger repo has both.
Your README should let a reviewer see what you deployed, where you deployed it, which account deployed it, and how they can repeat the process with their own key.
Before deploying
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done
Do not leak keys
Never paste a private key into hardhat.config.ts, a script, or your README. A public GitHub repo is not a private notebook.
Use environment variables and commit only an example file. If you accidentally commit a key, assume it is burned. Remove it from the wallet and create a new one.
Env example
Commit a sample file that shows the required names. Do not commit the real .env file.
This is enough for a teammate or recruiter to understand your deploy setup without seeing secrets.
# .env.example
TESTNET_RPC_URL="https://your-testnet-rpc-url"
TESTNET_PRIVATE_KEY="0xreplace_with_testnet_wallet_private_key"Use AI carefully
You can ask ChatGPT, Gemini, or Claude to draft your deployment script for your current Hardhat 3 project structure. Paste your contract name, constructor arguments, and folder tree.
Check the answer before using it. It must not hardcode private keys, must match your contract constructor, and must deploy the correct contract file. If it suggests old Solidity experimental pragmas or send/transfer patterns, reject that part.
Deployment notes
Add a short section like this to your README after you deploy. Keep it boring and exact.
If you cannot get faucet tokens today, add the deployment script and write “testnet deploy pending” with the blocker. Replace it before final HackIndia submission.
Deployment
Network: <testnet name>
Contract: <contract name>
Solidity: 0.8.x
Deployer: 0x...
Contract address: 0x...
Date: YYYY-MM-DD
Local test result: <paste command used and pass summary>
How to deploy
1. Copy .env.example to .env.
2. Add your own TESTNET_RPC_URL and TESTNET_PRIVATE_KEY.
3. Run the project deploy command from this repo.
4. Paste the new contract address in this section.Do this now
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done