Skip to content

README: tighten and restructure#4

Merged
bootuz merged 2 commits into
mainfrom
docs/readme-rewrite
May 23, 2026
Merged

README: tighten and restructure#4
bootuz merged 2 commits into
mainfrom
docs/readme-rewrite

Conversation

@bootuz
Copy link
Copy Markdown
Owner

@bootuz bootuz commented May 23, 2026

Summary

Halves the README (188 → 132 lines) and folds in the storefront-aware keyword adding, chart-position watchdog, and browser-notification plumbing that landed in PRs #1 and #2 since the last revision.

What changed

  • Folded Why into the opening pitch. One paragraph now covers the value prop instead of an intro + a separate "Why" section.
  • Updated architecture diagram. Shows both daily scheduled jobs (keyword refresh at 03:00 UTC + chart watchdog at 04:00 UTC), the iTunes RSS top-free feed as a new external dependency, and the SPA-poll → Notification API path.
  • API table moved into <details>. The five categories (apps / keywords / dashboard / charts / settings) remain visible by default; the 19-row table opens on click. Adds the 4 new chart endpoints: GET /chart-positions, GET /chart-events, POST /charts/refresh, POST /apps/:id/availability/refresh.
  • Dropped the inline release-DMG narrative. Links to .github/RELEASING.md. The README no longer carries a notarytool store-credentials walkthrough or per-stage signing opt-out prose — that's contributor reference, not "should I use this?" material.
  • Dropped the project-layout table and the "DMG on the way" line.
  • What's not here now lists chart-position history / sparklines (the actual v2 follow-up) instead of push/email alerts — which are partially in for chart events via the browser-notification path.
  • Fixed a stale link the previous README also had wrong: KeywordScorer.swift lives in Sources/App/Domain/, not Services/.

Verification

  • wc -l README.md → 132 (target was 90-110; slightly over because the diagram alone is 28 lines, but the prose is the targeted half).
  • All linked paths exist locally: LICENSE, CONTRIBUTING.md, SECURITY.md, .github/RELEASING.md, web/src/lib/countries.ts, Sources/App/Services/AvailabilityProber.swift, Sources/App/Services/ChartTrackerService.swift, Sources/App/Domain/KeywordScorer.swift, requests.http.
  • All 4 chart endpoints in the table verified against Sources/App/Controllers/ChartsController.swift's routes.get/routes.post calls.

CI

First real exercise of PR #3's paths-ignore rule — this README-only PR should trigger no pipeline at all.

bootuz added 2 commits May 23, 2026 18:00
Halves the README (188 → 132 lines) and folds in the storefront-aware
keyword adding, chart-position watchdog, and browser-notification
plumbing that landed since the last revision.

Structural changes:
- Folds "Why" into the opening pitch.
- Drops the "DMG on the way" note and the inline notarytool/credentials
  walkthrough — links to .github/RELEASING.md for the release flow.
- Drops the project-layout table and the per-stage signing-opt-out
  prose. `make help` covers what's needed at this level of detail.
- Wraps the full endpoint table in <details> so the API section reads
  as a 5-bullet category list by default. Adds the 4 new chart routes.
- Updates the architecture ASCII to show both daily scheduled jobs
  (keyword refresh + chart watchdog) and the RSS feed + SPA-poll →
  Notification API path.
- Replaces "push/email alerts" in 'What's not here' with the actual
  next missing piece (chart-position history / sparklines).
- Fixes a stale path: KeywordScorer.swift lives in Sources/App/Domain/,
  not Services/.

CI: the paths-ignore rule from PR #3 means this README-only PR triggers
no pipeline — first real exercise of the skip rule.
A picture beats four lines of architectural prose for 'what does this
actually look like'. Sourced from a live local run with 30 tracked
keywords spread across US/GB/DE/JP/IN/FR — shows ranks, top-result
icon strips, difficulty + entry-barrier dots, and the country picker
that landed in #1.

Lives at docs/dashboard.png so we have a directory to drop more
screenshots into later (charts page, history panel, etc.) without
cluttering the repo root.
@bootuz bootuz merged commit 76ba627 into main May 23, 2026
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant