From e4a451ca4a3a6229d913da86bb3fd46d35db6148 Mon Sep 17 00:00:00 2001 From: 2RE Date: Wed, 9 Sep 2026 21:09:50 +0800 Subject: [PATCH] docs: record repo setup milestone in memory-bank --- memory-bank/activeContext.md | 9 +++++---- memory-bank/progress.md | 8 +++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/memory-bank/activeContext.md b/memory-bank/activeContext.md index 89d0998..94fabf0 100644 --- a/memory-bank/activeContext.md +++ b/memory-bank/activeContext.md @@ -1,9 +1,9 @@ # Active Context — iFarted -*Last updated: 2026-09-09 (session 2)* +*Last updated: 2026-09-09 (session 3)* ## Current State -- **Greenfield.** No app code, no git repo yet. Workspace: `.clinerules/`, `memory-bank/` (6 core files + `research/yo-app.md`). +- **Greenfield — zero app code**, but the project is now a **git repo with a live public remote** (see Recent Changes). Workspace: `.clinerules/`, `memory-bank/` (6 core files + `research/yo-app.md`), `README.md`, `.gitignore`. - **Stack (locked):** React Native + Expo + TypeScript (accepted earlier). - **This session's decisions (locked by user):** 1. **Identity & discovery = all three:** unique @username + search · phone/contacts (opt-in) · invite code/deep link. @@ -11,7 +11,8 @@ 3. **Product design = Yo! pattern** (user: "research how they handled it and do that") → see `memory-bank/research/yo-app.md`. Key adoptions: fixed phrase w/ zero typing, notification text+audio, contact-list home with tap-to-send + one-tap fart back, **ephemeral (no inbox/history)**, context-based messaging framing (also our App Review explanation), username addressing. ## Recent Changes (this session) -- 2026-09-09: Researched Yo! (Wikipedia + CNET via Wayback). Created `memory-bank/research/yo-app.md`. Answered the Bun feasibility question (yes). Locked identity (all 3), backend (Bun + Expo Push API), product model (Yo-style) and rewrote the memory-bank core files to match. +- 2026-09-09 (session 3): **Repo initialized & pushed.** Server repo `2re/iFarted` already existed (public/open, created 2026-09-09 13:03Z). Local: `git init -b main`, added `README.md` + `.gitignore`, committed everything, initial commit `8fec909`. Pushed via **SSH key** (`torrey@nommesen.com`, registered on instance) — no password needed. Remote `origin` = `https://git.2re.top/2re/iFarted.git` with repo-local `url."ssh://git@git.2re.top:22222/".insteadOf https://git.2re.top/` so pushes transparently use SSH. Local `main` tracks `origin/main`. +- 2026-09-09 (session 2): Researched Yo! (Wikipedia + CNET via Wayback). Created `memory-bank/research/yo-app.md`. Answered the Bun feasibility question (yes). Locked identity (all 3), backend (Bun + Expo Push API), product model (Yo-style) and rewrote the memory-bank core files to match. ## Remaining Open Decisions (small, non-blocking) 1. **Audio asset:** the fart notification sound file (must be <30s for iOS; on-brand, not too loud/gross for reviewers). @@ -21,7 +22,7 @@ 5. Server deployment target (cheap VPS/fly.io/Railway) + invite deep-link domain once branding is set. ## Next Steps -1. `git init` + repo hygiene (README, `.gitignore`), commit memory-bank. +1. ~~Repo setup (git init, README, .gitignore, initial commit pushed to git.2re.top/2re/iFarted)~~ ✅ **done** (session 3). 2. Scaffold monorepo: `apps/mobile` (Expo TS) + `apps/server` (Bun + Hono + SQLite) + `packages/contracts` (shared API types). 3. Install Bun on this box; stand up the relay server with the REST API from systemPatterns. 4. Prove device-to-device fart end-to-end (two dev-build devices, Expo Push API, custom sound). diff --git a/memory-bank/progress.md b/memory-bank/progress.md index bd47928..2e0d5b6 100644 --- a/memory-bank/progress.md +++ b/memory-bank/progress.md @@ -1,9 +1,10 @@ # Progress — iFarted -## Current Status: Design locked, zero code (greenfield) -No application code exists yet. All major product/architecture decisions resolved. Ready to scaffold. +## Current Status: Design locked, zero app code — repo live +No application code exists yet. All major product/architecture decisions resolved. **Repo initialized & pushed** (session 3). Ready to scaffold. ## What Works +- **Git repo live** at `https://git.2re.top/2re/iFarted` (public/open, owner `2re`). Initial commit `8fec909` (`README.md`, `.gitignore`, `.clinerules/`, full `memory-bank/`). Local `main` tracks `origin/main`; push over SSH key (`torrey@nommesen.com`), no password. - Nothing application-wise yet. - Full requirements + architecture captured in Memory Bank (6 core files + `research/yo-app.md`). @@ -17,7 +18,7 @@ No application code exists yet. All major product/architecture decisions resolve - Mobile stack: React Native + Expo + TypeScript; EAS Build for iOS from this Linux box. ## What's Left to Build (MVP roadmap) -1. Repo setup: `git init`, README, `.gitignore`, commit memory-bank. +1. ~~Repo setup: git init, README, `.gitignore`, commit memory-bank~~ ✅ **done** — initial commit pushed to `git.2re.top/2re/iFarted` (session 3). 2. Scaffold monorepo: `apps/mobile` (Expo TS), `apps/server` (Bun + Hono + bun:sqlite), `packages/contracts` (shared types). 3. Install Bun; implement relay server per systemPatterns REST API (register/tokens/farts/search/contacts/invites/block + rate limiting). 4. Device-to-device fart end-to-end: two dev builds, Expo Push API, custom sound, location payload. @@ -38,5 +39,6 @@ Audio asset · Remove Ads price/lib · ad placement confirmation · final brandi - Android push requires a Firebase project for FCM client credentials even with Expo Push API (secret `google-services.json`, injected at build). ## Evolution Log +- **2026-09-09 (s3)** — Git repo initialized & pushed: `git init -b main`, `README.md` + `.gitignore` added, memory-bank + .clinerules committed (`8fec909`), remote `2re/iFarted` on git.2re.top (public) populated via SSH key. Memory-bank updated to match. - **2026-09-09 (s1)** — Memory Bank initialized; requirements captured; stack recommendation (RN + Expo + TS) accepted. - **2026-09-09 (s2)** — Yo! app researched (`memory-bank/research/yo-app.md`); Bun feasibility answered (yes); decisions locked: identity = all three mechanisms, backend = Bun + Expo Push API, product = Yo-style context-based messaging with ephemeral farts. Memory-bank core files updated.