NantiCatvertising · v0.2.0

The letter leaves first. The ad waits its turn.

npm test
Tests 81 passed (81)
Jakarta, 15 September 2026

Tab: 1 ad owed · pay later
Names fictionalHalaman 01 / 10
v0.2.0

Perihal : the tab

1 ad owed. Never 2.

Only RevenueCat's server can press the stamp. Not yet seen on a device.

Home screen with the amber pill: Tab: 1 ad owed · pay later
LUNASADS +1RevenueCat only
Halaman 02 / 10
v0.2.0

Perihal : the order

Ad, then the PDF.
The PDF, then the ad.

Dina needs a leave letter in HR's WhatsApp before work.

Dina is fictionalHalaman 03 / 10
v0.2.0

Perihal : one flow, real screens

Form with live letter preview
1 fill 5 fields
Home with the tab: 1 ad owed
2 PDF shared → tab 1
Settle sheet: watch 1 ad, Pro, or later
3 settle · Pro · later
Emulator, 2026-09-26Halaman 04 / 10
v0.2.0

Perihal : settlement

The app asks. The server decides.

Nanti AdMob RevenueCat 1 · verification token 2 · rewarded ad 3 · SSV callback 4 · ADS +1 dashed: not yet run
docs/SPIKE.mdHalaman 05 / 10
v0.2.0

Perihal : the ledger

debt = clamp(exported − ADS, 0, 1)

0
client-side writesablation
70,602
ledger transitions
299,592
settle paths, all via verified
Halaman 06 / 10
v0.2.0

Perihal : the engine

Ads and Pro, one customer.

The owed ad

generateRewardVerificationTokenpollRewardVerificationgetVirtualCurrenciesadTracker × 5

Pro clears it — products pending

getCurrentOfferingForPlacementpresentPaywallrestorePurchases
README.mdHalaman 07 / 10
v0.2.0

Tembusan : not done yet

Settle round-trip: not yet run on a device.

JUDGE.md

Pro products: not yet created.

JUDGE.md

Play listing, video: not yet.

DEMO.md
Halaman 08 / 10
v0.2.0

Lampiran : receipts

81
tests passing
8
golden letters
100%
lines, pure modules
npm run ablation
ablation: 0 client-side settle increments
2026-09-26Halaman 09 / 10
v0.2.0

Hormat kami : the ask

Judge the placement. Hold us to G1.

github.com/edycutjong/nanti
nanti.edycu.dev/

the landing page
Play not live yetHalaman 10 / 10