尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证🚍📍 els busos urbans de lleida en directe.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
els busos urbans de lleida, en directe i sobre el mapa. el web oficial de moventis es consulta gairebé sempre des del mòbil, dret a la parada, i des d'allà costa de fer servir. aquí tries les línies que t'interessen, toques la parada i veus quan arriba el bus. les dades són les mateixes: surten de l'api pública de moventis. les dades arriben per dos camins amb ritmes molt diferents.查看完整 README ↗
els busos urbans de lleida, en directe i sobre el mapa.
moventis-lleida.joeltaylor.business
el web oficial de moventis es consulta gairebé sempre des del mòbil, dret a la parada, i des d'allà costa de fer servir. aquí tries les línies que t'interessen, toques la parada i veus quan arriba el bus. les dades són les mateixes: surten de l'api pública de moventis.
| tries línies a la tira de dalt i el mapa es queda amb les seves parades. | la xarxa sencera, amb el color que després identifica cada línia al mapa. |
| on ets ara. de prop, cada parada porta quant falta per al pròxim bus. | arrapat a baix: el nom i el pròxim bus de cada línia, i el mapa encara es fa servir. |
| a mitja alçada hi caben les parades veïnes de cada línia i què vol dir cada hora. | obert del tot: una targeta per bus, amb el compte enrere i l'hora d'arribada. |
les dades arriben per dos camins amb ritmes molt diferents.
línies, parades i dies de servei. apps/scraper les descobreix cada nit a les 03:00 i les desa a postgresql. el web les llegeix d'allà amb una cache d'una setmana, així que el mapa es dibuixa sense tocar moventis.
arribades. es demanen a moventis en el moment que obres una parada i no es guarden enlloc. cada arribada ve marcada com a hora real (un desplaçament, 5 min 30 s) o com a hora d'horari (un rellotge, 14:35), i totes dues es normalitzen a Date. moventis parla sempre en hora de lleida i els servidors van en utc, de manera que la conversió passa per zoned-time.ts i mai per setHours.
quatre coses que no es veuen a la interfície:
▲ +2 min)./?lines=1,4&stop=10211) amb els identificadors públics de moventis, no amb els interns, de manera que un enllaç compartit sobreviu a una reconstrucció de la base de dades.tot això s'apaga des de la configuració, que es desa al dispositiu i no demana cap compte.
| ruta | què hi ha |
|---|---|
apps/web | next.js 15: el mapa, el calaix de parada i la configuració |
apps/scraper | la sincronització nocturna de línies, parades i calendari |
apps/expo | app react native, encara molt inicial |
packages/api | routers trpc i tota la lògica |
packages/db | client i esquema de prisma |
packages/shared | tipus, esquemes zod, constants i geometria |
tooling/* | configuració compartida d'eslint i typescript |
cal node 22 (.nvmrc), pnpm 9 i una base de dades postgresql. docker-compose.dev.yml en puja una de local si no en tens.
pnpm install --frozen-lockfile
cp .env.example .env # DATABASE_URL i les claus de google maps
pnpm --filter @moventis/db db:push
pnpm --filter @moventis/scraper sync:dev # omple la base de dades, una vegada
pnpm dev:web
les variables van totes en un sol .env a l'arrel. el map id de google demana un parell d'estils, clar i fosc, associats des de la consola; .env.example i map-styles/README.md expliquen la part que falla en silenci si te la deixes.
pnpm dev # totes les apps
pnpm build
pnpm lint
pnpm typecheck
pnpm test # determinista, sense xarxa ni base de dades
pnpm test:live # opcional, contra l'api real de moventis
fusionar a main és l'únic camí a producció. ci construeix les dues imatges, les puja a ghcr i avisa coolify, que se les baixa i les canvia. al servidor no s'hi compila res, i docker-compose.yml no pot guanyar mai una clau build:. el procediment i la marxa enrere són a docs/deployment.md.
CLAUDE.md (i el seu mirall AGENTS.md): l'arquitectura llarga i les trampes que ja han picat alguna vegada.CONTRIBUTING.md: com es treballa en aquest repositori.DESIGN.md i PRODUCT.md: els criteris visuals i de producte.