Skip to content

Polish launch README and landing page#31

Merged
andrewzolotukhin merged 2 commits into
mainfrom
fix/launch-readme-landing-blockers
Jun 9, 2026
Merged

Polish launch README and landing page#31
andrewzolotukhin merged 2 commits into
mainfrom
fix/launch-readme-landing-blockers

Conversation

@andrewzolotukhin

@andrewzolotukhin andrewzolotukhin commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Original request

Audit the XPenser README and landing page for launch blockers using the Todoist launch subtasks and Google Drive launch assets, and use the PR workflow if source or documentation changes are needed.

What changed

  • Repositioned README.md around the spreadsheet-replacement story, early project status, self-hosting, and API/MCP access.
  • Added launch-ready README screenshots from the approved Drive assets: dashboard month view, transactions, and preferences/MCP/email setup.
  • Expanded README setup guidance for production secrets, optional OpenAI email insights, Telegram, Brandfetch vendor enrichment, and API/MCP key handling.
  • Replaced the landing hero mock UI with a real dashboard screenshot and added an explicit early-project feedback cue.
  • Refreshed Open Graph/Twitter metadata, web manifest description, and og-image.png to match the launch positioning.
  • Updated the landing page test to cover the new positioning, screenshot alt text, and write-capable MCP wording.
  • Stabilized the category trend e2e test so it uses the created transaction's local date for both the stats entry point and custom trend range.

Reasoning

The completed Todoist/Drive prep established the launch narrative: honest early status, spreadsheet replacement, self-hostable/open-source positioning, and careful MCP wording. Current main includes write-capable MCP tools, so the public copy now treats MCP access as full account data access rather than read-only. The prior README/OG visuals were screenshots of the landing mock itself, including stale MCP wording, so this PR swaps them for real product screenshots from the approved demo data.

Screenshots / preview evidence

Dashboard asset used in README and landing:

xpenser dashboard month view

Generated social preview image:

xpenser Open Graph preview

Final preview QA captures:

Manual browser QA confirmed the deployed landing page includes the spreadsheet-replacement positioning, early-project feedback cue, self-hostable messaging, and write-capable MCP wording. Desktop 1440x1100 and mobile 390x844 screenshots showed the real dashboard image rendering without visible overlap. Browser page errors were empty.

Validation

  • npm run lint
  • npm run typecheck
  • npm test (60 files, 341 tests)
  • PLAYWRIGHT_BASE_URL=https://xpenser-pr-031.cleverbrush.com npx playwright test tests/e2e/workflows.spec.ts -g "opens category trend reports"
  • GitHub Actions run 27175188617: Lint and test, Deploy PR environment, and Playwright e2e succeeded on 6557f52.
  • Preview QA with agent-browser after the final deploy.
  • SigNoz check for xpenser-web-pr-31: no ERROR logs and no error traces over the last hour; 8,596 spans observed with p95 span duration about 50.8 ms. http.server.duration.count still returned no scalar series for the web PR service, so trace/log telemetry was the reliable validation source.

Checklist

  • I kept the change focused.
  • I updated docs or tests where needed.
  • I checked for secrets, local env files, and generated build output.
  • API changes keep contracts, endpoint metadata, and handlers aligned. No API changes in this PR.

@andrewzolotukhin andrewzolotukhin temporarily deployed to pr-31 June 8, 2026 23:58 — with GitHub Actions Inactive
@andrewzolotukhin andrewzolotukhin temporarily deployed to pr-31 June 9, 2026 00:11 — with GitHub Actions Inactive
@andrewzolotukhin andrewzolotukhin merged commit 1725a24 into main Jun 9, 2026
4 checks passed
@andrewzolotukhin andrewzolotukhin deleted the fix/launch-readme-landing-blockers branch June 9, 2026 00:32
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