north-star / commit
Deploy to apps.fuzzyworld.net with fuzzyworld-tools
package-lock.json | 13 +++++++++++++ package.json | 12 +++++++++++- readme.md | 4 ++-- src/app.ts | 2 +- src/commit.ts | 5 +---- src/features/session/session.ts | 2 +- src/index.html | 12 ++++++------ src/public_settings.ts | 2 +- vite.config.js | 3 ++- 9 files changed, 38 insertions(+), 17 deletions(-) diff --git a/package-lock.json b/package-lock.json index 95b84f5..2dcae16 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "devDependencies": { "@types/qrcode": "^1.5.6", "firebase-tools": "^15.10.0", + "fuzzyworld-tools": "git+https://code.fuzzyworld.net/fuzzyworld-tools.git#semver:^1.0.0", "markdownlint-cli": "^0.48.0", "typescript": "^5.8.2", "vite": "^5.4.19", @@ -5483,6 +5484,18 @@ "node": ">= 0.6.0" } }, + "node_modules/fuzzyworld-tools": { + "version": "1.0.2", + "resolved": "git+https://code.fuzzyworld.net/fuzzyworld-tools.git#de3a84832ad148e50d1d4d94f0cef3ad395a1575", + "dev": true, + "license": "MIT", + "bin": { + "fw": "bin/fw" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/gaxios": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz", diff --git a/package.json b/package.json index 86ead64..43d4d27 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "clean-old-firebase:run-30d": "bash scripts/clean-old-firebase.sh --days=30 --apply --verbose", "clean-old-firebase:run-1m": "bash scripts/clean-old-firebase.sh --minutes=1 --apply --verbose", "gen-commit-ts": "echo \"export const GIT_COMMIT='${CI_COMMIT_SHORT_SHA}'; export const IS_LOCAL_BUILD=false;\" > ./src/commit.ts", - "md-lint": "markdownlint \"**/*.md\" --ignore node_modules --ignore .git" + "md-lint": "markdownlint \"**/*.md\" --ignore node_modules --ignore .git", + "deploy": "fw deploy" }, "dependencies": { "firebase": "^12.0.0", @@ -23,9 +24,18 @@ "devDependencies": { "@types/qrcode": "^1.5.6", "firebase-tools": "^15.10.0", + "fuzzyworld-tools": "git+https://code.fuzzyworld.net/fuzzyworld-tools.git#semver:^1.0.0", "markdownlint-cli": "^0.48.0", "typescript": "^5.8.2", "vite": "^5.4.19", "vite-plugin-checker": "^0.12.0" + }, + "fuzzyworld": { + "app": "north-star", + "title": "Friend Compass", + "description": "Friend Compass shows live arrows pointing toward your friends. No account needed, end-to-end encrypted, works on any phone.", + "prebuild": [ + "CI_COMMIT_SHORT_SHA=$(git rev-parse --short HEAD) npm run gen-commit-ts" + ] } } diff --git a/readme.md b/readme.md index ffa4aa8..d9ae205 100644 --- a/readme.md +++ b/readme.md @@ -256,8 +256,8 @@ Tradeoff accepted: If priorities change later (for example, stronger anti-closed-clone goals), future versions can be relicensed with a different strategy. -[repo-link]: https://gitlab.com/PavelSafronov/north-star -[app-link]: https://pavelsafronov.gitlab.io/north-star/ +[repo-link]: https://code.fuzzyworld.net/north-star/ +[app-link]: https://apps.fuzzyworld.net/north-star/ [firebase-db-screenshot]: ./firebase-realtime-database-view.png [browserstack-link]: https://live.browserstack.com/dashboard#os=iOS&os_version=26.0&device_browser=safari&zoom_to_fit=true&full_screen=true&url=https%3A%2F%2Fpavelsafronov.gitlab.io%2Fnorth-star&speed=1 [firebase-console-link]: https://console.firebase.google.com/project/north-star-e5dee/overview diff --git a/src/app.ts b/src/app.ts index 7303cb0..7a45e5e 100644 --- a/src/app.ts +++ b/src/app.ts @@ -136,7 +136,7 @@ if (debugCommit instanceof HTMLAnchorElement) { }); } else { debugCommit.textContent = GIT_COMMIT; - debugCommit.href = `https://gitlab.com/PavelSafronov/north-star/-/commit/${GIT_COMMIT}`; + debugCommit.href = `https://code.fuzzyworld.net/north-star/commit/${GIT_COMMIT}.html`; debugCommit.target = '_blank'; debugCommit.rel = 'noopener noreferrer'; } diff --git a/src/commit.ts b/src/commit.ts index 35a3fc3..007d4de 100644 --- a/src/commit.ts +++ b/src/commit.ts @@ -1,4 +1 @@ -// This file is generated during CI builds (see gen-commit-ts in package.json). -// The dev fallback here keeps IS_LOCAL_BUILD=true so local runs are correctly identified. -export const GIT_COMMIT: string = 'local'; -export const IS_LOCAL_BUILD: boolean = true; \ No newline at end of file +export const GIT_COMMIT='96f7bf1'; export const IS_LOCAL_BUILD=false; diff --git a/src/features/session/session.ts b/src/features/session/session.ts index 2a31f60..bbb114b 100644 --- a/src/features/session/session.ts +++ b/src/features/session/session.ts @@ -67,7 +67,7 @@ export async function initSession({ if (isLocalRun) { await renderInviteQrCard({ container: inviteRoomQrList, - title: 'GitLab Pages URL', + title: 'App URL', url: `${GITLAB_PAGES_BASE_URL}#${roomHash}`, statusText: 'Scan to join on hosted app', roomId diff --git a/src/index.html b/src/index.html index b1c3917..42f4650 100644 --- a/src/index.html +++ b/src/index.html @@ -11,7 +11,7 @@ <meta property="og:title" content="Someone wants you to know where they are 📍" /> <meta property="og:description" content="Friend Compass shows live arrows pointing toward your friends. No account needed, end-to-end encrypted, works on any phone." /> - <meta property="og:url" content="https://pavelsafronov.gitlab.io/north-star/" /> + <meta property="og:url" content="https://apps.fuzzyworld.net/north-star/" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:title" content="Someone wants you to know where they are 📍" /> <meta name="twitter:description" @@ -26,15 +26,15 @@ <body> <p class="app-title"> - <a href="https://gitlab.com/PavelSafronov/north-star/-/blob/main/readme.md" target="_blank" + <a href="https://code.fuzzyworld.net/north-star/blob/readme.md.html" target="_blank" rel="noopener noreferrer" aria-label="Open project README"> <img src="assets/compass.png" alt="Compass icon" class="app-icon" /> </a> - <a id="app-title-link" href="https://pavelsafronov.gitlab.io/north-star/">Friend Compass</a> + <a id="app-title-link" href="https://apps.fuzzyworld.net/north-star/">Friend Compass</a> </p> <div class="room-header"> <p id="room-current" class="room-current"></p> - <a id="create-room-link" href="https://pavelsafronov.gitlab.io/north-star/">Create New Room</a> + <a id="create-room-link" href="https://apps.fuzzyworld.net/north-star/">Create New Room</a> </div> <form id="name-form" class="name-form" autocomplete="off"> <div class="controls-row controls-row-main"> @@ -66,9 +66,9 @@ </div> <div id="debug-info"> <p id="debug"> - <a id="debug-commit" href="https://gitlab.com/PavelSafronov/north-star/-/commits/main" + <a id="debug-commit" href="https://code.fuzzyworld.net/north-star/log/" target="_blank">Current Commit</a> - <a href="https://gitlab.com/PavelSafronov/north-star" target="_blank">Repo</a> + <a href="https://code.fuzzyworld.net/north-star/" target="_blank">Repo</a> </p> <p id="attributions"> <a href="https://www.flaticon.com/free-icons/tools-and-utensils" title="Tools and utensils icons">Tools and diff --git a/src/public_settings.ts b/src/public_settings.ts index efb6f98..b923377 100644 --- a/src/public_settings.ts +++ b/src/public_settings.ts @@ -41,7 +41,7 @@ export const PUBLIC_SETTINGS = { }, links: { /** Hosted app base URL used in invite QR cards for local runs. */ - gitlabPagesBaseUrl: 'https://pavelsafronov.gitlab.io/north-star/' + gitlabPagesBaseUrl: 'https://apps.fuzzyworld.net/north-star/' }, ui: { emojis: { diff --git a/vite.config.js b/vite.config.js index 8c40294..3bba094 100644 --- a/vite.config.js +++ b/vite.config.js @@ -1,10 +1,11 @@ import { defineConfig } from 'vite'; import checker from 'vite-plugin-checker'; +import fuzzyworld from 'fuzzyworld-tools/vite'; export default defineConfig({ root: 'src', - base: './', plugins: [ + fuzzyworld(), checker({ typescript: true, }),