NEONGRID

a serverless p2p light-cycle arena — this page is also the git repo.

ride the grid browse the code clone the repo

Clone

This site serves the repository over git's dumb-HTTP protocol as plain static files (plain files — there is no git server here, or any server at all):

git clone https://git.ardegazu.ro/game1.git
cd neon-grid

What it is

Tron-style multiplayer for up to 16 riders. Everyone rides a light cycle on a shared 128×96 grid, leaves a solid trail, and the last rider alive wins the round; first to 5 rounds takes the match. Installable PWA — works saved to an iOS home screen, safe-area aware, tap-to-steer on phones.

How it works

What's in the repo

client/src/game/ — the game

TypeScript, no framework: typed wire protocol, host simulation, canvas renderer (neon trails, derez, particles), WebAudio bleeps, lobby UI.

client/src/net/ — the p2p layer

A thin js-libp2p assembly: relay bootstrap from /.well-known/ap2p, a room-scoped protocol with a sealed-hello membership handshake, reconnection, and the six-method surface the game consumes. Swap the protocol prefix and it drives any turn/tick game.

deploy/ — the publish pipeline

publish-repo.sh builds this very site: landing page + bare mirror exploded to loose objects (static file servers and git's dumb-HTTP protocol agree on "every path must exist"), with an anonymity gate that refuses to publish identity-bearing bytes.

Run it yourself

cd client && npm install && npm run dev   # :4173
# open two tabs on the same #room URL and play yourself

Deploy: npm run build, then publish client/dist/ as static files anywhere — IPFS, a CDN, a folder behind nginx. It needs nothing but a libp2p circuit relay it's allowed to talk to (see src/game/config.ts).

Guarantees & limits, honestly

NEONGRID

o arenă p2p de motociclete de lumină, fără server — pagina asta e și repo-ul git.

intră în grilă răsfoiește codul clonează repo-ul

Clonare

Situl servește repository-ul prin protocolul dumb-HTTP al lui git, ca simple fișiere statice (chiar simple fișiere — nu există aici niciun server git, de fapt niciun server):

git clone https://git.ardegazu.ro/game1.git
cd neon-grid

Ce este

Multiplayer în stil Tron pentru până la 16 piloți. Fiecare conduce o motocicletă de lumină pe o grilă comună de 128×96, lasă în urmă un zid solid, iar ultimul rămas în viață câștigă runda; primul la 5 runde ia meciul. PWA instalabil — merge salvat pe ecranul de start al unui iPhone, respectă safe-area, se cârmește prin atingere pe telefon.

Cum funcționează

Ce e în repo

client/src/game/ — jocul

TypeScript, fără framework: protocol de rețea tipat, simulare la gazdă, renderer pe canvas (dâre de neon, derez, particule), bipuri WebAudio, UI de lobby.

client/src/net/ — stratul p2p

Un asamblaj subțire de js-libp2p: bootstrap de releu din /.well-known/ap2p, un protocol per cameră cu handshake de apartenență prin hello sigilat, reconectare, și cele șase metode pe care le consumă jocul. Schimbi prefixul de protocol și duce orice joc pe tick-uri.

deploy/ — conducta de publicare

publish-repo.sh construiește chiar situl ăsta: pagină de prezentare + oglindă bare explodată în loose objects (serverele de fișiere statice și dumb-HTTP-ul lui git cad de acord că „orice cale trebuie să existe"), cu o poartă de anonimat care refuză să publice octeți care poartă identitate.

Rulează-l singur

cd client && npm install && npm run dev   # :4173
# deschide două taburi pe același URL #cameră și joacă cu tine însuți

Deploy: npm run build, apoi publică client/dist/ ca fișiere statice oriunde — IPFS, un CDN, un director în spatele lui nginx. N-are nevoie decât de un releu libp2p cu care are voie să vorbească (vezi src/game/config.ts).

Garanții și limite, pe bune

NEONGRID

szerver nélküli p2p fénymotor-aréna — ez az oldal egyben a git repó is.

fel a rácsra böngészd a kódot repó klónozása

Klónozás

Az oldal a repót a git dumb-HTTP protokollján át szolgálja ki, sima statikus fájlokként (tényleg sima fájlok — nincs itt git szerver, sőt semmilyen szerver):

git clone https://git.ardegazu.ro/game1.git
cd neon-grid

Mi ez

Tron-stílusú többjátékos akár 16 versenyzőnek. Mindenki egy fénymotort vezet a közös 128×96-os rácson, tömör falat húz maga után, és az utolsó életben maradt nyeri a kört; aki előbb ér 5 körig, viszi a meccset. Telepíthető PWA — iOS kezdőképernyőre mentve is megy, safe-area-tudatos, telefonon koppintással kanyarodsz.

Hogyan működik

Mi van a repóban

client/src/game/ — a játék

TypeScript, framework nélkül: típusos wire-protokoll, hoszt-szimuláció, canvas renderer (neoncsíkok, derez, részecskék), WebAudio pittyegés, lobbi UI.

client/src/net/ — a p2p réteg

Vékony js-libp2p összeállítás: relé-bootstrap a /.well-known/ap2p-ből, szoba-hatókörű protokoll lepecsételt hello tagsági kézfogással, újracsatlakozás, és az a hat metódus, amit a játék fogyaszt. Cseréld ki a protokoll-előtagot, és bármilyen tick-alapú játékot elvisz.

deploy/ — a publikáló futószalag

A publish-repo.sh építi ezt az oldalt: nyitólap + bare tükör loose objectekre bontva (a statikus fájlszerverek és a git dumb-HTTP-je egyetértenek abban, hogy „minden útvonalnak léteznie kell"), és egy anonimitás-kapu, amely nem enged identitáshordozó bájtokat publikálni.

Futtasd magad

cd client && npm install && npm run dev   # :4173
# nyiss két fület ugyanarra a #szoba URL-re, és játssz magad ellen

Telepítés: npm run build, aztán tedd ki a client/dist/-et statikus fájlokként bárhová — IPFS, CDN, egy mappa nginx mögött. Semmi másra nincs szüksége, csak egy libp2p relére, amivel beszélhet (lásd src/game/config.ts).

Garanciák és korlátok, őszintén