Skip to content
All docs

Hackathon readiness: Monad Metropolis, Track 01

Source: "Metropolis Hackathon Rules & Guidelines", version 3.0, last updated 3 September 2026, supplied by the owner from the hackathon dashboard on 2026-10-09. Section numbers below refer to it.

Key rules

RuleOfficial text (summary)Section
Team and entries1–5 members; one project; one track only2.4, 2.5
Track 01"financial instruments, markets, and asset primitives, where the primary user is a trader, protocol, or financial product builder"3.3
Judging (all tracks)Product Quality & Completeness 20%, Technical Excellence 20%, Monad Integration 20%, Track Fit & Problem Relevance 20%, Innovation & Impact 20%5.2
Sponsor bountiesBounty requirements 40%, technical 30%, Monad integration 20%, innovation 10%; each sponsor publishes its own requirements3.3, 5.2
Demo videoAt most 3 minutes, public (YouTube, Loom, Vimeo), the product in actual operation (not slides), showing Monad interactions4.1, 9.4
OriginalityMost of the work done in the Hackathon period; pre-existing components must be identified in the README4.1
AI toolsPermitted; must be disclosed in the README4.1
LicenseOSI-approved open source license; code public on GitHub during and after4.1, 7.2
Do not submitPrivate keys, credentials, trade secrets, third-party personal data5.3
PrizesUSDC to the primary contact's wallet; KYC may be required6.1

Mandatory requirements checklist

RequirementStatusEvidence
Public GitHub repository with complete sourceDONEgithub.com/TheWeirdDee/imprest
README with setup instructionsDONEREADME "Quick start" (prerequisites, clone, install, build, tests, run); a fresh clone built and served every page
Open source licenseDONELICENSE (MIT)
Attribution of external code and librariesDONEREADME "Third-party code and attribution"
Commit history covering the build windowDONEFirst commit 2026-10-07; about 890 public commits
Demo video, at most 3 minutes, public, showing Monad interactionsOWNER: not recorded yetScript below
Explanation of how the project uses MonadDONEREADME "Why Monad and Perpl", landing page section
Contract addresses or transaction hashesDONEREADME status block, /status, /proof, proof/receipts/
Deployed on Monad mainnet or testnetDONE (testnet)ImprestPool 0x85fF…F457, DeskFactory 0x1569…c544
Originality statement; pre-existing components identifiedDONEREADME "Originality and build window"
AI tool use disclosed in the READMEDONEREADME "AI disclosure"
Docs: description, architecture, tech stack, setup and deploymentDONEREADME sections; docs/ARCHITECTURE.md, docs/DEPLOY_VERCEL.md, docs/TESTNET_DEPLOYMENT.md
Working prototype, not a mockupDONEhttps://imprest-chi.vercel.app; the owner ran a full browser walkthrough on testnet
Clear problem statement and intended userDONEREADME "Who it is for and why"
No keys or credentials in the repoDONE.env and key files are gitignored; CI runs a secret scan on every push
Submit through the hackathon website, Track 01OWNERHackathon website

Scorecard against the official criteria (self-assessment)

Criterion (20% each)Strongest evidenceMain gap
Product Quality & CompletenessHosted app covering the full flow (sign in, faucet, open desk, trade, monitor, close, settle); 80 browser tests; accessibility scan cleanProfit claim not demonstrated with genuine profit; no gasless trading on the hosted site; history limited without the indexer
Technical Excellence121 contract tests on Perpl's own bytecode, fuzz and invariant tests, reference model 26/26, receipts verified on a second RPC, green CINo independent audit; 2 acknowledged Low findings need a redeploy
Monad IntegrationDeployed contracts; every rule and fill in one Monad transaction; keeper and relayer transactions on testnet; measured gas costsThe README makes no throughput claims, deliberately; the video must show the on-chain transactions
Track Fit & Problem RelevanceTrading-credit primitive for traders, LPs and protocol builders: Track 01's stated audienceNo interviews with traders or LPs recorded
Innovation & ImpactRules enforced inside each order on an onchain order book; credit that cannot leave the desk; an honest null result publishedNo users or mainnet yet

Perpl (keeper and market-data use) and Mera (passkey accounts) are integrated. Eligibility depends on each sponsor's published bounty requirements (Section 3.3), which are not in the general rules. The owner should check each bounty page on the dashboard before claiming eligibility.

Demo script (at most 3:00, product in operation)

  1. 0:00–0:20 Landing page: what Imprest is, the TESTNET label, "How it works".
  2. 0:20–1:20 Open the app, sign in with a passkey, use the dashboard faucet, open a desk (100 AUSD),

and place a small long. Show the transaction on Monadscan (testnet).

  1. 1:20–1:50 Set leverage to 6x: the policy check blocks it. Explain that the contract also rejects it

on its own, and show the earlier LeverageExceeded receipt on /proof.

  1. 1:50–2:20 Close the position and close the desk: the settlement card shows exactly what came back.

Show the transaction.

  1. 2:20–2:45 /proof: the keeper's graduate() transaction and the 400 AUSD pool credit (testnet).
  2. 2:45–3:00 /status: live checks and the deployed commit, and what is pending (profit claim,

mainnet, audit).