GitShow/addyosmani/factory-demo
addyosmani

factory-demo

A worked TMDB demo of Factory's issue-to-verified-draft-PR software development loop.

by addyosmani
claude-codecodexnextjssoftware-factorytmdb
Star on GitHubForknpm

TypeScript

2 stars3 forks1 contributorActive · 1mo agoSince 2026MIT

Meet the team

See all 1 on GitHub →
addyosmani
addyosmani9 contributions

Languages

View on GitHub →
TypeScript41.3%
Shell41.1%
CSS16.9%
JavaScript0.7%

Commit activity

Last 12 weeks · 9 commits

Full graph →

Community health

2 of 6 standards met

Community profile →
42
✓README✓License○Contributing○Code of Conduct○Issue Template○PR Template

Recent PRs & issues

Active · 5 in progress · Last activity 1mo ago
See all on GitHub →
addyosmani
Add an accessible quick finder for loaded moviesOpenIssue

Why Help people jump to a film in the current discovery page without introducing another TMDB endpoint or confusing the demo with a full catalog search. Product boundary This is a client-side quick finder, not remote TMDB search. It filters only the trending and popular movies already loaded for the discovery page. Its label and helper copy must make that limit clear. Scope Add a quick-finder input near the discovery content. Combine the already loaded trending and popular summaries, deduplicate them by movie ID, and filter by title case-insensitively. Update matching results as the person types without a network request. Give results an accessible count/status, an intentional no-results state, and a clear action. Each match links to the existing movie detail route. Acceptance criteria Typing a partial title returns matching movies from the page’s existing payload, ignoring letter case. Duplicate movies from trending and popular appear once. Clearing the query restores the finder’s initial state. A no-match query shows an explicit no-results message rather than an empty unlabeled grid. The input has a persistent label and concise copy saying it searches movies on this page; result-count updates are announced without moving keyboard focus. Inspecting browser requests while filtering shows no additional TMDB or application data request. A new pure unit test covers case-insensitive matching, partial matches, deduplication, whitespace, and no matches. No existing test file is changed. , , , and pass. TMDB attribution remains visible and remains server-only. Guardrails Keep this under 400 changed lines and within at most five files. Do not touch , , , package files, GitHub workflows, or factory policy/adapters. Do not add a dependency or call a remote search endpoint. Expected files , (new), , ,

addyosmani · 1mo ago
addyosmani
FQ-3: Add an accessible quick finder for loaded moviesOpenPR

What Add a client-side quick finder that filters and deduplicates the trending and popular movies already loaded on the discovery page. Queue item FQ-3 - https://github.com/addyosmani/factory-demo/issues/3 done_when: The labeled discovery-page quick finder filters and deduplicates only the already loaded trending and popular movies by partial title without issuing a request, announces result counts, handles clear and no-match states, and a new filter unit test plus full gates pass. Why this is safe The finder receives the existing server-loaded movie summaries and uses only local React state plus a pure filter. It introduces no fetch, effect, endpoint, dependency, credential change, or load-bearing edit. A new unit test proves matching and deduplication, while responsive checks covered 1440px and 375px layouts and development logs showed no request during filtering. Gates FACTORY_GATES: level=full status=GREEN passed=4 failed=0 failing=none skipped=none misconfigured=none Skipped gates: none Verification Verifier verdict: accepted The implementation is focused, accessible, request-free during filtering, independently green, and negatively proven against the verified base. PROOF: status=PROVEN test_exit=1 Human read required no Not done Remote TMDB catalog search; this finder intentionally searches only movies already loaded on the page.

addyosmani · 1mo ago
addyosmani
Add a local favorites watchlistOpenPR

What Add the local favorites watchlist and normalize every persisted favorite to the approved five-field shape. Queue item FQ-1 - https://github.com/addyosmani/factory-demo/issues/1 done_when: The local watchlist meets issue #1 acceptance criteria; every persisted favorite contains exactly id, title, posterPath, releaseDate, and voteAverage; a new regression assertion proves surplus fields are discarded; full gates pass; and fresh independent verification accepts the result. Why this is safe Persistence reconstructs each stored object from the five allowed fields instead of serializing the caller's object. The new test inspects raw storage and the reversible proof shows it fails against the pre-recovery implementation because a surplus field survives. No pre-existing test, load-bearing path, dependency, or TMDB credential boundary changed. Gates FACTORY_GATES: level=full status=GREEN passed=4 failed=0 failing=none skipped=none misconfigured=none Skipped gates: none Verification Verifier verdict: accepted-with-reservations All functional checks passed, including exact five-field persistence and . Reservation: the human-authorized new regression test is outside the stale list, so the draft requires a human read. Human read required Yes. This is the explicitly authorized recovery after the prior run reached the charter's two-rejection stop, and the handoff manifest was not updated to name the new regression test file. Not done No product behavior beyond issue #1. The factory handoff comment was not rewritten during implementation.

addyosmani · 1mo ago

Recent fixes

View closed PRs →
addyosmani
docs: capture learnings from building the Factory demoMergedPR

Adds a first-person retrospective covering the setup speed, roughly 82-minute observed run, issue-to-PR workflow, verifier findings, human recovery experience, integration cost, and concrete Factory tuning ideas.

addyosmani · 1mo ago
Structured data for AI agents

Repository: addyosmani/factory-demo. Description: A worked TMDB demo of Factory's issue-to-verified-draft-PR software development loop. Stars: 2, Forks: 3. Primary language: TypeScript. Languages: TypeScript (41.3%), Shell (41.1%), CSS (16.9%), JavaScript (0.7%). License: MIT. Topics: claude-code, codex, nextjs, software-factory, tmdb. Open PRs: 5, open issues: 3. Last activity: 1mo ago. Community health: 42%. Top contributors: addyosmani.

·@ofershap

Replace github.com with gitshow.dev