← back to Nineoh Guide
initial scaffold: build brief + gitignore for Unofficial 90210 Guide
ac84507c0f2c3f2782c7c511896e4d0488ff111f · 2026-07-25 09:42:36 -0700 · Steve
Files touched
Diff
commit ac84507c0f2c3f2782c7c511896e4d0488ff111f
Author: Steve <steve@designerwallcoverings.com>
Date: Sat Jul 25 09:42:36 2026 -0700
initial scaffold: build brief + gitignore for Unofficial 90210 Guide
---
.gitignore | 12 ++++++++++++
BRIEF.md | 42 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8557557
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,12 @@
+node_modules/
+.env*
+tmp/
+*.log
+.DS_Store
+dist/
+build/
+.next/
+.expo/
+ios/build/
+android/
+.vercel
diff --git a/BRIEF.md b/BRIEF.md
new file mode 100644
index 0000000..a054447
--- /dev/null
+++ b/BRIEF.md
@@ -0,0 +1,42 @@
+# Unofficial 90210 Guide — Build Brief
+
+**Owner:** Steve · **Started:** 2026-07-25 · **Repo:** ~/Projects/nineoh-guide
+
+## Goal
+Ship an **unofficial** fan guide for the 90210 TV series as an **Expo (React Native)
+iOS app + Vercel-hosted Next.js web app** sharing one backend. Forward goal:
+**Apple App Store**, via **TestFlight first**.
+
+## Two committed decisions (2026-07-25)
+1. **Ship target = TestFlight-ready, STOP before App Store submit.**
+ Build + EAS-package the signed iOS build; do NOT submit to Apple review.
+ The submit step needs Steve's interactive Apple ID + 2FA and is a GATED
+ approval → draft a `pending-approval` memo, never auto-submit.
+2. **Content posture = original text + licensed pro imagery.**
+ - 100% ORIGINAL summaries/bios/news blurbs written for this app.
+ - Only public-domain / Creative-Commons / explicitly-licensed images.
+ - Buying image licenses = SPEND = GATED → draft each purchase to
+ `pending-approval`; ship a pending-image placeholder pipeline meanwhile.
+
+## Hard rails (from the pasted feasibility report + Steve's standing rules)
+- Branding clearly **"Unofficial"** + disclaimer; NO official logos/title cards/key art.
+- NO scraping IMDb/CW; APIs/licensed feeds only (TVmaze/Wikidata OK w/ attribution + rate limits).
+- NO verbatim network synopses; original expression only.
+- Publicity rights: celebrity imagery is EDITORIAL placement only, never in ads/icon/paywall.
+- Formal DMCA page + repeat-infringer policy; UGC (if any) needs report/block/moderation.
+- App must NOT be a thin aggregator/webview (Apple 4.2 / Play) — native value:
+ saved watchlist, spoiler-state, push, offline reading, moderated discussion.
+- Ads (later): AdSense/AdMob only on content-rich screens; app-ads.txt/ads.txt; declare ads.
+
+## Architecture (target)
+- `web/` Next.js (SSR/ISR) on Vercel — SEO editorial pages + shared API routes.
+- `mobile/` Expo + EAS — iOS app consuming the same API.
+- `packages/core/` shared TS types + data model.
+- Postgres (episodes, seasons, cast_people, characters, credits, news_items,
+ assets[rights ledger], ugc_posts, dmca_cases).
+
+## Definition of "done" for this loop
+Web MVP runs locally + on Vercel; Expo app runs in simulator; EAS build config
+valid and TestFlight-ready; rights ledger + placeholder pipeline in place;
+DMCA + privacy + disclaimer pages present. Everything past the Apple submit
+line and every $ spend is drafted to pending-approval.
(oldest)
·
back to Nineoh Guide
·
add rights-first Postgres schema + original legal pages (dis ade979f →