CleanFrame
삼성 The Frame용 개인 홈 화면, 포크와 맞춤을 위한 시작점
Truth J Blue LLC의 신앙 중심 디지털 워크북으로 신적 설계를 인식하고 그리스도 안에서 높은 자아와 일치해 목적을 살아가세요
From Truth J Blue LLC: an interactive, faith-first digital workbook to help you recognize your Divine design, align with your Higher Self in Christ, and walk in your purpose.
라이프스타일TypeScript · HTMLGitHub @jeremiahvanwagner-droid온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Purpose Activation Toolkit
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Truth J Blue · Growth by Choice — an interactive, faith-first digital workbook that guides you from wondering about your purpose to walking in it. $247, one-time, lifetime access, sold through a HighLevel payment link.
Every exercise is fillable, every answer is saved on the device as it's written, and signed-in answers sync to the reader's account. The four companion PDFs (print/annotation workbooks, no form fields) carry the same exercises in their original long form.README 전문 보기 ↗Truth J Blue · Growth by Choice — an interactive, faith-first digital workbook that guides you from wondering about your purpose to walking in it. $247, one-time, lifetime access, sold through a HighLevel payment link.
Every exercise is fillable, every answer is saved on the device as it's written, and signed-in answers sync to the reader's account. The four companion PDFs (print/annotation workbooks, no form fields) carry the same exercises in their original long form.
The keepsake (/workbook) gathers every answer into a printable document (browser "Save as PDF").
lib/sync/workbookSync.ts holds the rules; lib/store.ts binds them to React and localStorage; lib/sync/supabaseRemote.ts talks to public.workbooks.
updated_at, restamped by the database trigger on every update); otherwise the device re-reads and merges. Nothing is written after a failed read, and a device never deletes an answer because the cloud copy lacks it.Modules and the keepsake stay behind a server check. /api/entitlement-sync confirms the signed-in email against HighLevel before a new grant and keeps manual: comps and unclassified legacy rows. Paid lesson text is loaded from /api/paid-content only after that check, so it is not part of the public JavaScript bundle. Refund deletion is disabled until source, raw, the unique email/product key, and row-level security are verified. Partial refunds, cancellations, and disputes are not defined here — see docs/access-blockers.md.
npm install
npm run dev # http://localhost:3000
npm test # targeted regression tests (Node 22.18+ / 24)
npm run build # production build + type check
tests/harness/mock-supabase.mjs is a local stand-in for the Supabase endpoints the app uses, with failure injection and a second-device simulator, for reproducing save and sync behaviour in a real browser. Point a dev server at it with NEXT_PUBLIC_SUPABASE_URL=http://localhost:54399 and NEXT_PUBLIC_SUPABASE_ANON_KEY=mock-anon-key in .env.local (never commit that file).
| Behaviour | Verified by |
|---|---|
| Save, reload, offline/failed writes, failed reads, two-device merges and conflicts, sign-out and account switching, late responses | tests/sync.test.ts; the same scenarios in a browser against the mock backend |
| Purchase matching (live, succeeded, correct link and email; paging; lookup failures) | tests/entitlement.test.ts |
| Keepsake contents and progress counting | tests/keepsake.test.ts; printed output checked in headless Edge |
| Real signed-in sync across two devices in production | Not yet exercised — see the owner walkthrough in the handoff |
| A real Toolkit purchase unlocking access | Not yet exercised — no qualifying live purchase exists |
app/ # routes: home, /toolkit, /module/*, /workbook, /audit, /store, API routes
components/ # interactive exercise components (auto-saving)
lib/ # store + sync, entitlements, module registry, content manifests
tests/ # node:test regressions and the mock Supabase harness
legacy/ # earlier prototypes, archived for reference (not built)
© Truth J Blue LLC. Educational content; not a substitute for medical or psychological advice.