hackquest logo

Ruuma

Stop guessing what people want. Ruuma turns community demand into real creator drops you can buy, receive, and actually trust.

Videos

Imagen del proyecto 1
Imagen del proyecto 2
Imagen del proyecto 3
Imagen del proyecto 4

Pila tecnológica

React
Next
Web3
Ethers
Node

Descripción

Ruuma

Anyone can request. Communities show demand. Creators decide what actually ships. Payment only starts after terms are clear, funds sit in IDRX campaign escrow on Polygon, and the collectible mints only after fulfillment.

The problem

Creators already sell physical goods, limited editions, and experiences, but the digital layer is messy. Demand is mostly likes. Checkout often happens before refund rules and deadlines are clear. NFTs often mint first and "shipping" comes later. In Indonesia we also need a practical pay rail, so we use IDRX on Polygon.

What Ruuma does

1. Request: interest signal, free, not a purchase.

2. Official Drop: creator publishes price, deadline, and refund terms before any order.

3. Order and pay in IDRX; campaign escrow labels funds per Drop.

4. Fulfillment is recorded off-chain (host update, buyer confirm).

5. Claim the collectible; mint the ERC-721 only after claim rules pass.

Product rules we keep

A Request is not a purchase. Orders only start from an Official Drop. Payment, fulfillment, and collectible claim stay separate. The token is a receipt after the real world finishes, not authenticity proof, not legal title to the physical item, and not an investment product.

Why this fits Ethereum Jakarta Hackathon 2026 (RWA)

The "asset" is a real offer (good or experience) plus payment rules you can check onchain. Escrow and mint do not replace delivery. They record payment custody and issuance after the real process completes. That sits next to payments/stablecoins, ownership records, and real-world process verification, without claiming we tokenize land titles or securities.

Roles

Member: request, order, confirm receipt, claim collectible.

Host: publishing eligibility, linked wallet, publish Drop, update fulfillment, open claim.

Live now

App: https://ruuma-ncph.vercel.app/

API: https://ruuma-api.vercel.app/v1/health

Repo: https://github.com/taufiqhidayah/Ruuma

Stack

Next.js, React, Wagmi/WalletConnect, NestJS, Prisma, Supabase Auth, Foundry, IDRX checkout, deployed on Vercel.

Onchain (Polygon mainnet)

CampaignEscrow: 0x523797498a57b0Eb1C5a9053D72EdE10A50FBbE9

RuumaCollectible: 0x3A59c1dE598Eb033A33f0D63f3Db59f123a5aC9D

IDRX: 0x649a2DA7B28E0D54c13D5eFf95d3A660652742cC

Both contracts are Sourcify exact-match verified.

Short judge demo

Landing, open a Request, open a Drop, order and payment state, fulfillment, claim/mint, check the tx on Polygonscan, open the collectible verify page.

Limits we admit

The collectible is not legal ownership of the physical good. Some fiat-to-IDRX flow still goes through treasury/operator before every order auto-deposits into escrow. The demo focuses on the happy path: pay, fulfill, mint. We run on Polygon (EVM compatible) for cost and UX. Contracts are plain Solidity if we move later.

Bottom line

Not a PFP mint. We put creator offers behind clear terms, a stablecoin, campaign custody, and an onchain receipt after the real world is done.

Progreso del hackathon

Progress during Ethereum Jakarta Hackathon 2026

Start

We locked an RWA angle for creator goods and experiences, not a speculative NFT-first drop. Stack: Next.js, NestJS, Foundry, Polygon + IDRX. Monorepo so web, API, and contracts ship together.

Built

Requests (not purchases). Official Drops with terms before checkout. Orders + IDRX pay. Host and buyer fulfillment. Collectibles from ELIGIBLE to mint/ISSUED with a ChainRecord. Member/host dashboards follow the signed-in account, not fake persona data.

Auth and accounts

Supabase email + X. Fixed OAuth so codes land on /auth/callback. Workspace profile, publishing eligibility, verified wallets for host and buyer.

Onchain

Wrote and tested CampaignEscrow and RuumaCollectible in Foundry, deployed on Polygon mainnet, verified on Sourcify. Backend live mode: openCampaign, deposit IDRX, mint collectible. Token metadata over the public HTTPS API. Explorer links in the UI.

Payments

IDRX hosted checkout plus status verification. Respect the IDRX mint minimum. Custody state (treasury/escrow) comes from the API so judges can read it clearly.

Deploy

Web: https://ruuma-ncph.vercel.app/

API: https://ruuma-api.vercel.app/

README with screenshots, plus a demo recording checklist.

Fixes during the sprint

Publish blockers (eligibility + host wallet). Collectibles need public visibility to show in collection. Mint scripts for demo volume. Removed the mock "Sari" dashboard name; use the real workspace name.

What judges can click now

Browse Requests/Drops on the live MVP, sign in, follow order + payment state, open a collectible + Polygonscan, read contracts on Sourcify.

Still polishing

Auto-deposit into escrow on every verified order, clearer fail/refund UX, demo/pitch video for Demo Day.

Estado de recaudación de fondos

No external fundraising. No priced round, SAFE, or token sale for this submission. Hackathon costs (Vercel, Supabase, POL gas, small IDRX amounts) are self-funded.

After the event we are open to grants or creator pilots, but this submission stands without outside capital. Near term: make escrow deposits more automatic, run creator pilots in Jakarta, keep contracts portable to other EVM chains if needed.

Líder del equipo
VVertalis
Enlace del proyecto
Desplegar ecosistema
Polygon MainnetPolygon Mainnet
Sector
RWANFT