diff --git a/README.md b/README.md index 57c9458..5a6260c 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,7 @@ +

+ echolot — measure, don't guess +

+ # Echolot Free software for detecting and debugging **local network issues** from an Android phone — diff --git a/assets/branding/banner.svg b/assets/branding/banner.svg new file mode 100644 index 0000000..b449522 --- /dev/null +++ b/assets/branding/banner.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + measure, don't guess + diff --git a/assets/branding/icon-adaptive-background.svg b/assets/branding/icon-adaptive-background.svg new file mode 100644 index 0000000..9aa5ad7 --- /dev/null +++ b/assets/branding/icon-adaptive-background.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/assets/branding/icon-adaptive-foreground.svg b/assets/branding/icon-adaptive-foreground.svg new file mode 100644 index 0000000..082a3cb --- /dev/null +++ b/assets/branding/icon-adaptive-foreground.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/assets/branding/icon.png b/assets/branding/icon.png new file mode 100644 index 0000000..15ae7f7 Binary files /dev/null and b/assets/branding/icon.png differ diff --git a/assets/branding/icon.svg b/assets/branding/icon.svg new file mode 100644 index 0000000..cc36d74 --- /dev/null +++ b/assets/branding/icon.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/branding/social-preview.png b/assets/branding/social-preview.png new file mode 100644 index 0000000..54654d1 Binary files /dev/null and b/assets/branding/social-preview.png differ diff --git a/assets/branding/social-preview.svg b/assets/branding/social-preview.svg new file mode 100644 index 0000000..9bd64dc --- /dev/null +++ b/assets/branding/social-preview.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + measure, don't guess + diff --git a/assets/branding/wordmark-on-dark.svg b/assets/branding/wordmark-on-dark.svg new file mode 100644 index 0000000..bf9b2a7 --- /dev/null +++ b/assets/branding/wordmark-on-dark.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/assets/branding/wordmark-on-light.svg b/assets/branding/wordmark-on-light.svg new file mode 100644 index 0000000..49a0cf6 --- /dev/null +++ b/assets/branding/wordmark-on-light.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/docs/build-status.md b/docs/build-status.md index 3052cc1..5c43f79 100644 --- a/docs/build-status.md +++ b/docs/build-status.md @@ -33,6 +33,31 @@ Could NOT be compiled in the cloud sandbox: dl.google.com (Google Maven) and ser are proxy-blocked, and no device is reachable for on-device runs. Build + iterate locally (Android Studio / Claude Code). Wrapper is pinned to Gradle 8.14.3. +## Website — `web/` (2026-07-30) +Single-page site for echo-lot.app on Cloudflare Workers: static `public/` from the edge, a small +Worker for the stable short URLs (`/apk`, `/apk.sha256`, `/fdroid`, `/source`) and `/api/latest`. +Version info is resolved from the Gitea releases API at request time (edge-cached 5 min), so +tagging a release is the only publish step — the homepage shows the latest version/date/size via +progressive-enhancement JS and falls back to pre-release copy otherwise. Auto light/dark via +`prefers-color-scheme`: dark = sonar display, light = chart-recorder printout, same amber-accent +token system. Deploy: `npx wrangler deploy` from `web/`, or CI via +`.gitea/workflows/deploy-site.yml` (needs `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID` +secrets); full story in `web/README.md`. Open: favicon/wordmark are placeholders until the +branding assets land (in progress in a parallel session). + +## Branding — `assets/branding/` (2026-07-30) +Identity chosen: the **Focus** mark — a quiet lattice of nodes with exactly one under examination +(amber) inside teal viewfinder brackets. Tone is surgical measurement, not scanning (sonar-sweep +visuals and the "sound out your network" tagline were explicitly rejected); tagline is +**"measure, don't guess"**. Palette: abyss `#071522`, tile `#0E2433`, instrument teal `#35E0C4`, +finding amber `#FFB454`, foam `#E8F4F2` — teal is always the instrument, the single amber point is +the finding. The wordmark is hand-drawn monoline SVG paths (zero font dependency); the second "o" +is the signature teal ring + amber ping. Assets: `icon.svg` (+ `icon.png` 512² — Gitea avatars reject SVG), `icon-adaptive-{foreground,background}.svg` +(108dp adaptive-icon layers, art inside the 66dp safe circle), `wordmark-on-{dark,light}.svg`, +`banner.svg` (1200×300, wired into the repo README), `social-preview.svg`/`.png` (1280×640, for the +Gitea/GitHub social-preview slot). The website's placeholder favicon/wordmark can now be replaced +from these. + ## Next steps 1. Build locally, run on several physical devices (varied Android versions/vendors), collect the JSON reports — especially the real per-device Shizuku dump formats.