Skip to content

Repository files navigation

First Bucket Studios

Rip a pack. Five names. Eighty-two nights. Send the card.

Basketball pack · NBA · WNBA · sports cards · holographic foil · WebGL · 82-0

A browser basketball pack you can fork. Not a shop. Not a sportsbook. Not the NBA.

Play: first-bucket-studios.vercel.app

How to play · Fork it · Contribute · MIT


Play

Ninety seconds. HOW-TO-PLAY.md is the sheet.

1. Rip the pack. A franchise, an era, and a luck lane land. No two pulls match.

Home

2. Tear the foil. Ten cards. Tap five.

Foil

3. Lock five. The season walks. The number on the card is that walk.

The card

4. Send the card. Save the PNG. Share it. Pin it if you want it on the rail.

Send

Tape: docs/tape/demo.mp4

You click What it does
Rip the pack New room. New ten.
Lock five 82 nights from those names.
Save the card first-bucket-{team}-{wins}.png
Share Phone: system share sheet. Desktop: the tray.
Pin this walk Keeps it on the rail. Nothing is pinned until you pin it.
X / Threads / Reddit / Facebook / WhatsApp / Telegram / LinkedIn Opens that app with the walk.
Discord Copies the walk, then opens Discord. Paste it.
TikTok / Snapchat / Instagram Saves a 9:16 plate, copies the caption, opens the app.
Copy the walk Public /walk/v1.… — paste it anywhere.
Open the walk Same five, same nights, forever.

There is no “copy image.” The file is the card. The URL is the walk.

House demo (optional, not pinned): Thunder 51–31.

https://first-bucket-studios.vercel.app/walk/v1.OKC.positionless.even.51.chet~dort~hartenstein~jalenw~sga

Install

Node 22. Auth off. Database unused.

git clone https://github.com/DigitalCurrensy/first-bucket-studios.git
cd first-bucket-studios
npm install
npm run dev

Open a real browser tab so Save works. Some embeds swallow the download.

npm run test:pin    # mixer lock + walk + stream-json
npm run test:vl     # stills + tape are night stock
npm run test:demo   # live pack, studio already running

The house certificate is the lock test. It must stay this walk. See CONTRIBUTING.md.


Documentation

Doc What it is
HOW-TO-PLAY.md The ninety seconds
docs/TESTING.md E2E layers
docs/STREAM-JSON.md NDJSON eval pipe
docs/BENCHMARKS.md Pin + visual loop
docs/ANALYTICS.md Booth funnel. Local.
docs/WALK.md Walk certificate
docs/STUDIO.md Rooms, themes, performance
FORK.md Copy the loop. Swap the sport.
NOTICE MIT is the code, not the names
SUPPORT.md How to ask
SECURITY.md How to report a hole
CONTRIBUTING.md How to land a patch

Update flow. git pullnpm install if the lockfile moved → npm run test:pin. Walk v1 is frozen. Mixer does not move.

Themes. Night arena (default) or light studio. Rail toggle. Reduced motion skips the ticker.

Stream-JSON. One object per line on stdout from npm run test:demo. Beats, then a walk, then a result.

GitHub Action. .github/workflows/pin.yml runs test:pin and test:vl on every push.


Community

Talk happens in GitHub Discussions.

Category Use it for
Q&A Setup, Save / Copy / Open, “how do I”
Ideas Proposals before any PR
Show and tell Forks, other sports, stills
Announcements Releases from the maintainers

Bugs belong in issues. Security reports follow SECURITY.md, never a public thread.


Contributing

You are welcome. Read CONTRIBUTING.md, run npm run test:pin, open a focused pull request.

Do not retune the mixer. Do not paste league marks. Leave public/__grok/ in place.


License

MIT. Invite the rip — FORK.md.

Read NOTICE before you ship a fork with names on it. Plates, initials, and house crests are mitigations. They are not a license.

Built with Grok. Leave public/__grok/ in place.

About

Rip a basketball pack in the browser. Ten cards. Five names. 82 nights. The card is a PNG. The walk is a URL. NBA · WNBA · holographic foil.

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages