Commit graph

23 commits

Author SHA1 Message Date
Ayo
f6b71023ec chore: flatten the app workspace
Some checks are pending
Checks / lint (push) Waiting to run
Checks / test (push) Waiting to run
Checks / content (push) Waiting to run
2026-07-18 21:12:24 +02:00
ayo
6e9cb93a12
chore: restore mnswpr to a standalone app repo (#54)
Some checks are pending
Checks / lint (push) Waiting to run
Checks / test (push) Waiting to run
Checks / content (push) Waiting to run
Move the @cozy-games/* packages, sites, docs, and package-publish tooling out
to github.com/ayo-run/cozy-games. The app now consumes those packages from npm
instead of the workspace. Root config, workspace globs, and CI target the app.
2026-07-18 20:47:19 +02:00
dependabot[bot]
6727a3013c
chore(deps-dev): bump vite from 8.0.3 to 8.0.16 (#50)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.3 to 8.0.16.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.16
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-16 21:45:30 +02:00
ayo
2aaba5d904
chore: update docs 2026-07-16 16:10:46 +02:00
Ayo
3418be3d7b chore: move to @cozy-games/mnswpr 2026-07-06 00:11:22 +02:00
Ayo
cc44789829 refactor: use wcb v5 createElement-safe static props 2026-07-05 13:03:08 +02:00
Ayo
bafe1db285 feat(replay): replay engine 2026-07-04 12:56:29 +02:00
Ayo
6c90cde0f9 feat(move-log): game-agnostic move events 2026-07-04 12:21:06 +02:00
Ayo
7cbf9baaa8 chore: security hardening 2026-07-03 23:04:52 +02:00
Ayo
0532fd6d66 chore: infra tooling and configs 2026-07-03 21:54:29 +02:00
Ayo
969ebba067 chore: restructure to new cozy-games monorepo
Reviewed-on: https://git.ayo.run/ayo/cozy-games/pulls/1
Co-authored-by: Ayo <ayo@ayco.io>
Co-committed-by: Ayo <ayo@ayco.io>
2026-07-03 13:53:13 +00:00
Ayo
4fa88fb431 feat: reusable, time-windowed leaderboard (@cozy-games/leaderboard)
Extract the leaderboard into a generic, backend-agnostic package and add
rolling Today/Week/Month/All-Time windows, a web component, and local-first
development against the Firestore emulator.

Package (leaderboard/):
- LeaderBoardService: backend-agnostic core via a storage-adapter seam, with
  Firebase and Supabase adapters (Supabase client injected, no added dep)
- Rolling time windows (last 24h / 7d / 30d) with hover tooltips; top-N by score
- <cozy-leaderboard> web component built on web-component-base: compose the UI
  in HTML, configure the backend once in JS
- Every user-facing string is configurable (labels, tooltips, empty/loading/
  error messages, anonymous name) so i18n lives in the app; README + CONFIGURATION

App (mnswpr.com):
- Compose the board declaratively in index.html via <cozy-leaderboard>
- Nickname + randomized greeting bar; score submission through the element
- Legends: the current all-time leaders frozen into a static /legends page
- Firebase config and leaderboard namespace via Vite env vars; emulator-first
  local dev (VITE_FIRESTORE_EMULATOR)

Firebase schema-as-code:
- firebase.json, .firebaserc, firestore.rules (public reads, create-only scores,
  no client updates/deletes, namespace-generalized), empty indexes (rolling
  windows need none)
- prod (mw-*) vs dev/test (mw-test-*) separation by collection namespace
- emulator config, seed script, and docs (firebase-leaderboards.md,
  leaderboard-env-migration.md, AYO.md)

Utils/tests: UTC date-bucket helper (retained as metadata) with Vitest coverage.

Reviewed-on: https://git.ayo.run/ayo/mnswpr/pulls/1
Co-authored-by: Ayo <ayo@ayco.io>
Co-committed-by: Ayo <ayo@ayco.io>
2026-07-03 13:42:03 +02:00
Ayo
bf26d3e80a test: add tests 2026-07-02 20:31:29 +02:00
Ayo
c09181f380 feat(app): show leaderboard & enable sending result on game done 2026-04-03 14:57:51 +02:00
Ayo
dab366496e chore: organize pnpm workspaces 2026-04-03 14:13:11 +02:00
Ayo
a6aae78396 chore: remove unused dep esbuild 2026-04-03 03:17:05 +02:00
Ayo
304557163b feat: initial npm package @ayo-run/mnswpr 2026-04-03 02:02:50 +02:00
Ayo
a41604e3b2 chore: new release script inspired by how we do it on Elk.zone 2026-04-02 17:32:16 +02:00
Ayo
139d85001c chore: use eslint for css linting 2026-04-02 16:52:24 +02:00
Ayo
554cb26ad2 chore: use eslint for linting & formatting 2026-04-02 14:41:52 +02:00
Ayo
671965942a chore: migrate to vite from webpack 2026-04-02 08:53:09 +02:00
Ayo
5229e0a727 chore: add husky; add post-commit hook to auto-mirror to gh & sh 2026-02-22 16:06:00 +01:00
Ayo
66675f0cf0 chore: use pnpm 2025-08-29 16:12:35 +02:00