{{ t.icon }} {{ t.message }}
⚠️ Wrong network. Please switch to Base Sepolia to continue.
Logo

GRIDMAN NETWORKS

Ecosystem Profile Hub

Dashboard
🔐

Connect Your Wallet

Connect your Web3 wallet on the dashboard to access your profile, staking, and mission hub.

Connect on Dashboard

📊 Grid Points Analytics

Your total achievement determines the global grid progression tier.

{{ stableGridPoints.toLocaleString() }}
Grid Points Collected
Grid {{ gridLevel }} → Grid {{ gridLevel < 7 ? gridLevel + 1 : 7 }} {{ gpProgress }}% complete
{{ stableGridPoints.toLocaleString() }} GP Target: {{ nextLevelGpRequirement.toLocaleString() }} GP for Grid {{ gridLevel + 1 }} 🎉 Max Level!
How to Earn GP
⛓️ On Chain
🔒 Staking1 GMAN = 1 GP
⛏️ Start Mining+100 GP
💰 Claim Mining+300 GP
📜 Gov. Vote+200 GP
📆 Daily Check-In
🔶 Daily+5 GP
⭐ Day 7+100 GP
💎 Day 14+300 GP
👑 Day 30+1000 GP
🎯 Others
Referral+500 GP
Launchpad+800 GP
Activity League — Mining Speed Multiplier
Activity League Grid Level Mining Bonus
{{ tier.label }} {{ tier.gridRange }} {{ tier.boost }}

🎯 GRID MISSION HUB

10 Missions available · Complete to earn bonus GP

{{ completedMissionsCount }}/{{ missions.length }} done
{{ m.status === 'completed' ? '✅' : m.icon }}
{{ m.title }}
{{ m.desc }}
{{ person.inviteCount }}/{{ m.requiresInvite }}{{ m.requiresInvite > 1 ? 's' : '' }} ✓ Ready
+{{ m.gpReward }} GP 🔥 Day {{ streakCount + 1 }}
{{ Math.round(completedMissionsCount / missions.length * 100) }}% done

🔒 Advanced Staking Vault

Stake GMAN: 1 GMAN = 1 GP while staked · Lock tier: +{{ tierGpRate > 0 ? tierGpRate.toFixed(2) : '0.10–0.20' }} GP/day permanent.

Total Staked
{{ (person.stakedAmount || 0).toLocaleString() }}
GMAN
= {{ (person.stakedAmount||0).toLocaleString() }} GP active
+{{ stakingGpRatePerDay.toLocaleString() }} GP/day (lock)
{{ isLockPeriodActive ? '🔒 Locked Until' : '✅ Lock Expired' }}
{{ isLockPeriodActive ? formatLockExpiry(stakeLockedUntil) : 'Free to Unstake' }}
{{ unit.value }}
{{ unit.label }}
⏸️
Rewards Frozen
GP & APY paused
👛 Wallet Balance
{{ walletGmanBalance > 0 ? walletGmanBalance.toLocaleString(undefined,{maximumFractionDigits:2}) : '—' }} GMAN

⚠️ Active lock: {{ activeLockDays }}d. Only ≥ {{ activeLockDays }} days can be selected.

⛔ {{ stakeRejectionReason }}

📊 Reward Estimate {{ estimatorTierInfo.name }}
⬆️ Tier up! Lock will reset to {{ estimatorTierInfo.lockDays }}d
Instant GP
+{{ estimatorInput.toLocaleString() }}
from new stake
GP / Day
+{{ estimatorGpPerDay.toLocaleString() }}
lock bonus
GMAN / Day
+{{ estimatorGmanPerDay }}
APY {{ estimatorApyPct }}%
GMAN / Year
+{{ estimatorGmanPerYear.toLocaleString() }}
yearly projection
Lock period {{ estimatorTierInfo.lockDays }} days · +{{ estimatorGpPerLock.toLocaleString() }} GP total
After requesting, there is a 72-hour cooldown before unstake can be executed. During cooldown, GP & APY are frozen. Partial unstake will reset the lock to the remaining tier.
⏳ Cooldown Active {{ cooldownRemainingFormatted }}
Requested: {{ unstakeRequestAmount.toLocaleString() }} GMAN
0h Unlock: {{ cooldownUnlockFormatted }} 72h
⏸️ GP & APY rewards frozen during cooldown
Cooldown Complete · Ready to Execute
Amount: {{ unstakeRequestAmount.toLocaleString() }} GMAN
Claim Rewards
⭐ GP Lock Bonus
{{ tierGpRate > 0 ? tierGpRate.toFixed(2) : '0' }} GP/day · manual claim
+{{ stakingGpClaimable.toLocaleString() }} GP ready to claim
Saved (unclaimed) {{ stakeGpUnclaimed.toLocaleString() }} GP
Newly accrued {{ stakingGpPending.toLocaleString() }} GP
Total GP after claim {{ (stakeGpAccrued + stakingGpClaimable).toLocaleString() }} GP
🪙 GMAN APY
APR {{ onChainApr > 0 ? (onChainApr/100).toFixed(6) : tierApyPct }}% ⛓ on-chain tier est. · Diamond Vault Staker Starter
{{ apyGmanPending.toFixed(3) }} GMAN pending ⛓ live
Daily rate {{ apyDailyGman.toFixed(3) }} GMAN/day
Last claimed {{ apyLastClaimedTs ? formatActivityTime(apyLastClaimedTs) : 'Never' }}
Staking Tiers & Rewards
Tier Lock Duration GP/day APY Bonus
Starter 7 Days 0.10 10% +1 key instant
Staker 14 Days 0.12 12% +1 instant · 1/day
Vault 30 Days 0.15 15% +2 instant · 3/day
Diamond 60 Days 0.20 20% +3 instant · 5/day
Tier aktif: 💎 Diamond (60d) 🏛️ Vault (30d) ⚡ Staker (14d) 🌱 Starter (7d) No active lock (stake to start)
Lock Bonus
+{{ stakingGpRatePerDay.toLocaleString() }}
GP / day
Accumulated
{{ stakeGpAccrued.toLocaleString() }}
GP saved
Claimable
⏸ Frozen +{{ stakingGpClaimable.toLocaleString() }}
unclaimed

🗳️ On-Chain Governance

Grid 3+ must vote every 30 days to maintain active multipliers and prevent automatic tier adjustment.

✅ Voted Today
Next vote available in {{ voteCountdown }}
🔒 Locked
🔒

Voting requires Grid 3 or higher

You are currently at Grid {{ gridLevel }}. Keep mining, staking, and growing your network to reach Grid 3 and unlock governance voting.

Last Vote {{ person.lastVoteTimestamp ? parseTime(person.lastVoteTimestamp) : 'Never Voted' }}
Total Votes {{ person.voteCount || 0 }} times

⚙️ Admin — Set Tier APY

Only visible to contract owner wallet

OWNER ONLY
{{ tier.label }}
{{ onChainApyTiers[tier.key] ? (onChainApyTiers[tier.key]/100).toFixed(1) : '—' }}%
≥{{ tier.min }} GMAN
{{ tier.label }}: {{ adminApy[tier.key] ? Math.round(adminApy[tier.key]*100) : '—' }} bps

📋 Activity History

Last 50 actions recorded

{{ filteredActivityLog.length }} entries
Sure?
GP History
{{ gpChartTotal.toLocaleString() }} GP earned in last {{ gpChartRange }}d
📭

{{ activityLog.length === 0 ? 'No activity yet. Start mining, staking, or open a mystery box!' : 'No entries for this filter.' }}

{{ entry.icon }}
{{ entry.label }}
{{ formatActivityTime(entry.ts) }}
+{{ entry.gman.toLocaleString() }} GMAN 🪙 +${{ entry.usdt }} USDT 💵 +{{ entry.gp.toLocaleString() }} GP +{{ entry.key }} 🗝️
{{ entry.extra }}