Skip to content

Host Boing Pets on Vercel with Neon - #1

Open
chiku524 wants to merge 6 commits into
mainfrom
cursor/cursor-apps-hosting-05df
Open

chiku524 wants to merge 6 commits into
mainfrom
cursor/cursor-apps-hosting-05df

Conversation

@chiku524

@chiku524 chiku524 commented Nov 7, 2026 •

Copy link
Copy Markdown
Member

Summary

Moves the public app from the Cursor Apps tray to Vercel. The game, Express wallet flow, and visual style stay the same.

  • Vite still builds the client. One Node.js function on Fluid Compute serves /api.
  • The shared pasture is Neon Postgres in iad1, provisioned through the Vercel Marketplace. The function uses @neondatabase/serverless and the unpooled connection string.
  • Hatch and feed still require a real Boing testnet 6913 receipt. Hunger, joy, and streaks are still derived on read. There is no cron and no new user secret.
  • Vercel sign-in protection is off, so anyone with the link can open the site and connect a Boing wallet.

Yard, NFTs, and 3D

The same site now has a shared three.js yard so players can see every buddy in one place. The field is grass under daylight, with trees farther out instead of a tight pen. Each species has its own body, and a scruffy or stray buddy shows that condition.

  • The first player deploys Boing's reference NFT collection (PET) with Express. Each wallet then mints one pet NFT. The server checks the mint calldata and the on-chain owner slot.
  • Staking the pet NFT requires a signature and a live check that the wallet still holds that token. Transferring it away turns the stake off.
  • Bond and unbond move 0.01 testnet BOING with a real protocol bond or unbond.
  • Kibble follows belly and mood. A snack stand only sells after a feeding, toys only pay when a buddy is glad, and a pen shelters a scruffy pet but cannot feed a stray. Earnings pause after three days until they are collected.

Session, growth, and walking

  • Express stays connected across a refresh. The extension is read with boing_accounts, and the official web-wallet fallback reuses the session it already stored. Disconnect clears that session. A brand-new tab still needs one Connect click, because the popup wallet does not keep keys after the tab closes.
  • Buddies grow from hatchling to juvenile, grown, and elder based on age, care, and practice. Forage, Greet, and Play are once-a-day signatures. Forage helps a fed pet find food, Greet helps a glad one, and Play makes the toy cart matter.
  • Click the grass to walk your own buddy. The first click signs a wander pass that lasts a day. Later clicks move the pet, and other players see that spot.

Clothes

Each buddy has five slots: head, neck, body, back, and feet. The catalog is fixed. Forage can turn up a common piece. Uncommon, rare, epic, and mythic pieces are created only when the server calls grantPiece with an item it chose, which is the hook future minigames will use. Equipping or taking a piece off is a signature, and the 3D pasture draws whatever that buddy is wearing.

Deploy Result

  • URL: https://boing-pets.vercel.app
  • Target: production
  • Status: READY
  • Project: nico-builds/boing-pets
  • Framework: Vite + Node.js function
  • Database: Neon Postgres (free, region iad1)
  • Latest production deployment: dpl_Bt8ytbEXdfNFPABeT2EVNsmAJZeu (Nov 7, 2026, 8:36 AM ET)

GitHub is not connected to the Vercel project yet, so a push does not redeploy by itself. Connect it with vercel git connect when you want preview deployments on this pull request.

Open in Web Open in Cursor 

cursoragent and others added 2 commits November 7, 2026 01:36
Run the existing pasture API and Vite client as one Node process so Cursor
Apps can preview and publish it. Postgres is used when DATABASE_URL is
injected; hatch and feed still require real testnet receipts.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
Serve the Vite client and care API as a Fluid Node function. The shared
pasture uses the Marketplace Neon database in iad1, with the same testnet
receipt checks and lazy care state.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
@cursor cursor Bot changed the title Host Boing Pets on Cursor Apps with Postgres Host Boing Pets on Vercel with Neon Nov 7, 2026
cursoragent and others added 4 commits November 7, 2026 04:46
Mint a Boing reference NFT for each buddy, stake it while the wallet still
holds it, and bond 0.01 testnet BOING. Kibble accrues from care and buildings,
and the pasture shows every buddy in one three.js yard.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
Give the yard grass, a fence, and a body for each species. Kibble now depends
on belly and mood: the snack stand needs a feeding, toys need a glad buddy,
and a pen cannot feed a stray.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
Restore a Boing Express session after refresh, let buddies grow through
forage, greet, and play, and walk the field by clicking the grass.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
Players can equip a fixed catalog of clothes on five slots. Forage may find a common piece, and rarer pieces stay behind a server grant for future minigames.

Co-authored-by: Nicholas Chikuji <chiku524@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants