尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Cartas sin vergüenza para tus panas. A Cards Against Humanity–style party game with Latino flavor, played on everyone's phone at the same time. Its main twist is that your group writes its own cards (inside jokes, nicknames, that one story about the tío), and the game makes sure they come up.
You need a Vercel account and a Redis database. Either works:
redis://default:<password>@<host>:<port>).martinpazmino/Cards_NikNsaue.
Vercel detects Vite and deploys the api/ function automatically. Click Deploy.KV_REST_API_URL and KV_REST_API_TOKEN.REDIS_URL with your connection string, for
Production and Preview. Vercel's "Redis" Marketplace integration sets
REDIS_URL for you.Share the short production URL (
https://<project>.vercel.app). The long…-<team>.vercel.appdeployment URLs sit behind Vercel's login (Deployment Protection): friends can't open them, and phones can't install the app from them. Invite links inside the app always use the production URL.Install it like an app: open the production URL, then browser menu → Install app / Add to Home Screen.
Vercel deploys your repo's production branch (usually
main) to the main URL. Merge this work intomain, or set the branch under Settings → Git → Production Branch.
This clones the project into your GitHub account and provisions Upstash during setup:
Tips
iad1), which is AWS us-east-1.KV_REST_API_URL + KV_REST_API_TOKEN or
UPSTASH_REDIS_REST_URL + UPSTASH_REDIS_REST_TOKEN (Upstash REST), or
REDIS_URL / KV_URL (any redis:// or rediss:// URL). If both kinds are
set, Upstash REST wins. See .env.example.npm install
npm run dev # http://localhost:5173, the API runs inside Vite with an in-memory store
No database or account is needed locally. The dev server also listens on your
network, so phones on the same Wi-Fi can join at http://<your-computer-ip>:5173.
npm test # engine, API, Redis (if redis-server is installed) and i18n tests
npm run build # production build into dist/
npm start # serve dist/ + API like production, on http://localhost:3000
npm run e2e # 4 simulated phones play a full game (needs Playwright + Chromium)
npm run check:cards # validate the built-in decks
To develop against a real database, copy .env.example to .env.local (it's
git-ignored) and fill in one option, or run vercel env pull .env.local. Both
npm run dev and npm start read it.
shared/cards/clasico.js, spanglish.js and picante.js.
___ for each blank (up to 2). Two blanks means "pick 2".
A prompt without a blank is a question.npm run check:cards to catch duplicates and style issues.shared/cards/index.js.DEFAULT_SETTINGS in shared/constants.js.APP_NAME in shared/constants.js, plus index.html,
public/manifest.webmanifest, the Logo in src/components/ui.jsx and a
few strings in src/lib/strings.js.src/lib/strings.js (npm test checks every key exists in ES and EN).public/icons/icon.svg and run npm run assets (uses Playwright).A static React app plus one Vercel Function, with game state in Redis. The server is authoritative: phones send moves, the server validates them, and each phone only receives what its player is allowed to see. Phones poll a tiny version number about once a second, served from the CDN, and download the full state only when it changes. The full design (why not WebSockets, consistency, security, costs) is in docs/ARCHITECTURE.md.
api/index.js Vercel Function: every /api/* request
server/handler.js HTTP routing, errors, CDN cache headers
server/rooms.js rooms & decks: auth, compare-and-swap writes, deck sync
server/store.js Redis store (Upstash REST or REDIS_URL, Lua CAS) + in-memory store
shared/game.js pure game engine (state machine)
shared/view.js per-player view (what each phone may see)
shared/text.js blanks, filling prompts with answers
shared/cards/ the decks
src/ React app (screens, components, sync hook, i18n, styles)
test/ node:test suites
scripts/ dev server, e2e, card/i18n checks, asset generator
Everything fits in free tiers for a group of friends. A 2-hour, 8-player night uses about 40K Redis commands: Upstash's free plan includes 500K per month, and on a Redis Cloud free database a room takes only tens of KB, with one connection per running function. See docs/ARCHITECTURE.md.
Game mechanics inspired by Cards Against Humanity. All cards in this repo are original, and this project is not affiliated with Cards Against Humanity LLC. Made for playing with friends, not for sale.