Auto-tracking everywhere — every family-wide metric is captured automatically — Locked 2026-06-20: every tracked metric in the chirag127/oriz family is auto-captured. The oriz-me lifestream specifically pulls from auto sources only — GitHub commits via webhook, npm publishes via post-publish hook, VS Code coding sessions via Wakatime API, site visits via CF Web Analytics, builds via GH Actions webhook. No manual entry anywhere in the metric pipeline. Manual = decay; auto = honest.
Bug tracker — GitHub Issues only — Locked 2026-06-20: every site / extension / package / worker / data repo uses its own GitHub Issues as the sole bug tracker. Linear, Trello, Jira, Plane.so, Asana, Height — all REJECTED. Cross-repo triage via repo:org searches. Free unlimited, GitHub-native, integrates with PRs and commits via #123 syntax.
Chrome contract — @chirag127/astro-chrome v0.1 — Locked: generic components driven by 4 per-site config files; 3-level sidebar (Section → Group → Leaf); shared Datasheet Dark tokens across every site (no per-site accent); Iosevka wordmark stamp (slug-only, no ORIZ prefix); 24 auto-generated legal pages; pnpm workspace at the workspace umbrella root.
Chromium engine hardware scaling profiles — Guidelines and configurations for optimizing browser engines across multi-vCPU clouds, hybrid processors, memory-constrained clients, and mobile sync targets.
Markdown-in-repo only — no headless CMS, anywhere — Every site stores content as .md / .mdx files in its own repo. Decap CMS, TinaCMS, Strapi, Sanity, Contentful, Storyblok and every other headless CMS are explicitly REJECTED.
Code stats — every metric tool turned on (9-tool stack) — Locked 2026-06-20: every public family repo runs the full code-stats stack — Sonarcloud + CodeRabbit + Codecov + CodeClimate + DeepSource + biome + GitHub Insights + Tokei + Lines-of-Code badge. All free for OSS. Auto-tracked per the auto-only-tracking rule. Extends the 5-tool code-quality decision with three more stat-shaped tools (GH Insights / Tokei / LoC badge) on top of the 5 quality tools.
RSS-driven cross-post engine — oriz-omnipost — @chirag127/post-site watches the oriz-blog-site RSS feed and fans each new entry out to every blogging platform that exposes a public API. Adapter pattern; idempotent; canonical URL preserved; short-link fallback when the target truncates content.
Dynamic family-data registry: @chirag127/astro-shell/family-data + auto-discovery cron — User mandate 2026-06-22 evening (final): family inventory changes constantly; every app must read from a SINGLE dynamic registry instead of hardcoding the list. Registry lives in @chirag127/astro-shell/family-data.ts (TS module). A daily GH Action scans chirag127/* repos via the GH API, classifies each by slug suffix (-app / -npm-pkg / -api / -book / -ext / etc.), regenerates family-data.ts, commits + bumps astro-shell version, triggers Renovate auto-PR across all consuming apps. Zero manual edit. Surfaces consuming this registry: footer Family column / sidebar 'other apps' / home-app index pages / packages-catalog auto-discovery / API hub aggregator at data.oriz.in.
Feature flags — deferred (YAGNI) until first real need — Locked 2026-06-23. No feature-flag system in the family right now. Reason: every concrete need we have today is solved by something else (tier checks via Firebase Auth claims for Pro/Max gating; git push for incident response; A/B testing has no users yet). Adding a flag system would be infra we'd maintain to solve problems we don't have. Trigger to revisit: first real incident where a runtime kill-switch would have helped, OR first product decision that needs per-user A/B.
Forms — trio (Web3Forms primary + Static Forms fallback + Tally for rich) — Locked 2026-06-20: contact forms ship a vendor-redundant pair (Web3Forms primary, Static Forms fallback, both browser-only, both free unlimited). Tally handles rich / multi-step / conditional forms. Three roles, no overlap.
Geocoding — deferred (no current need); CF-IPCountry covers geo-routing today — No geocoding service adopted in 2026-06-20. None of the 11 current sites need address↔coordinate translation. Cloudflare's free CF-IPCountry request header covers all current geo-routing needs (consent banner geo, payment-route geo). When a site lands a map feature, the swap target is OpenStreetMap Nominatim or Mapbox — both free, no card.
Lifestream auto-event sources — three streams (GitHub webhooks + Wakatime daily + CF Web Analytics daily) — Locked 2026-06-20: the oriz-me JSONL canonical store is fed by THREE auto-tracked event sources only — GitHub webhooks via Hookdeck, Wakatime daily-summary cron, and Cloudflare Web Analytics daily-summary cron. No manual entry, no minute-grain coding capture, no per-pageview visitor capture. Reinforces the auto-only-tracking rule.
Market-data per repo — GH Actions cron + GH Pages JSON serve, one repo per API — FII/DII activity and Tickertape MMI each live in their own GitHub repo. GH Actions scrapes (weekdays post-NSE-close for FII/DII, hourly for MMI) and commits JSON back into the repo's data/ directory. GitHub Pages + raw.githubusercontent.com serve the JSON publicly. Zero Cloudflare Workers, zero shared aggregator repo.
Maximum libraries policy — reverse 'minimal-libraries'; consume community libs heavily — User reversed the minimal-libraries decision (2026-06-22 evening): use MAXIMUM number of community libraries so we write less code ourselves. Every @chirag127/oriz-* and @chirag127/astro-* package internally uses community libraries as much as possible. Goal: 90% community code / 10% glue. Performance impact mitigated by Astro per-route island hydration + tree-shaking + lazy-load.
MIT license on all 41 chirag127/oriz* repos — All 17 packages + 26 apps + 2 APIs relicensed from source-available-all-rights-reserved to MIT on 2026-06-21. Unlocks every free-for-OSS perk (Sentry for OSS, Crowdin for OSS, BrowserStack OSS, FOSSA, etc.) and clarifies commercial use is fine — the family still monetises via ads/affiliate/subscription, that's orthogonal to the source license.
Modal Labs for GPU batch + Val.town for utility scripts — Locked 2026-06-23 after fact-checking Modal Labs free tier still exists (verified). Modal handles GPU-heavy batch jobs ($30/mo recurring credits = ~50 T4-hours, no card at signup, hard Workspace budget cap). Val.town handles utility scripts + webhook receivers + cron reminders (100K runs/day free, GitHub OAuth signup). Modal is NOT part of the 4-rail HTTP fallback chain; it's a specialized rail.
No Firebase Functions — Blaze requires a card on file, hard blocked — Cloud Functions for Firebase requires the Blaze pay-as-you-go plan, which requires a card on file with no real spend cap. Per the no-card-on-file rule, Functions are excluded. Replaces with: GitHub Actions cron (free for public repos), Cloudflare Workers (100K req/day free), Cloudflare Pages Functions (shared 100K/day free), browser-side compute, static JSON in Pages.
No separate dev/prod projects — one prod + emulator + 5 cheap defensive moves — Locked 2026-06-23. Verdict from cited research (15+ sources, 6-prong fan-out): a separate dev Firebase project is net-negative at oriz scale today (Spark plan, no paying users, solo founder, mostly stub apps). Emulator + one prod + 5 cheap pre-emptive moves (GCP lien, defineSecret(), wrangler env split, 1Password CLI, CF Tunnel for Razorpay webhooks) is right-sized. Triggers to flip and add oriz-dev: first ₹99 live payment, second deploy-rights human, or first prod-data incident — whichever comes first. Razorpay structurally forbids a second staging account (one business-PAN per merchant).
Notifications — FCM (transport) + Knock (orchestration) — Two-layer notification stack: Knock owns multi-channel orchestration (in-app + email + SMS + web push); FCM stays as the web-push transport. Free 10K notifs/mo on Knock, free unlimited on FCM.
Per-runtime framework matrix locked — Astro 6 for all 25+ sites + companion docs; Vite+React+WXT for browser extensions; esbuild+TS for VS Code extensions; tsup+Node 22 for CLIs and MCP servers. Each runtime gets the framework that ships best to its target.
Project management — GitHub Projects only — Locked 2026-06-20: family-wide project / task management lives on a single GitHub Projects board on chirag127/oriz master, with kanban + table + roadmap views. Notion, Obsidian Tasks, Linear, ClickUp, Asana, Trello — all REJECTED. The knowledge/ OKF bundle covers documentation; GitHub Projects covers tasks.
Workspace layout: repos//<own|forks>/// — The workspace umbrella organizes submodules in a 5-level hierarchy: GitHub owner (oriz/ for chirag127 or c127/ for chirag127) → own/ vs forks/ → 4 artifact-type buckets (prod, svc, lib, content) → category folder → repo. Shape B grouping (4 buckets) chosen over flat. Forks live under their owner. Folder names shortened 2026-06-24 (prod/svc/lib/api/npm/mcp/bs-ext/ide-ext) for shorter paths.
Revenue channels 2026 — every product fans out to every viable channel via omni-publish — Every product surface in the chirag127/oriz family (26 apps + 17 packages + 5 books + future browser-/VS-Code-extensions + CLIs + MCP servers) auto-publishes to as many revenue channels as 2026's API reality allows. Orchestrated by @chirag127/omni-publish on every tag push. AI copy via NVIDIA NIM primary + OpenRouter free-models fallback. Drafts for manual-only platforms (X, Reddit, LinkedIn, Medium — all dead/closed APIs in 2026) land in a single Telegram channel split into 4 sections. Rate-limit ceiling: 1 auto-post per channel per day per repo.
Shared-vs-divergent matrix family-wide (FINAL 2026-06-22 evening) — Definitive matrix of what is shared via packages vs what diverges per-app. Auth FULLY shared. Pricing FULLY shared. Theme tokens API shared, but hex colors + type stack PER-APP. Footer DATA shared (FAMILY_APPS/BOOKS/PACKAGES from astro-shell), but footer VISUAL per-app per content. Theme: ONE forced theme per app (NO dark/light toggle). NOT every app needs all 4 nav surfaces — only what's needed for AdSense + Play Store + MS Store approval gates.
Q3 2026 ship order — home + janaushdhi + ncert + blog first, then 16 tools, books in parallel — Priority order for shipping the oriz family across Q3 2026. Home-app + janaushdhi-app + ncert-app + pages-blog-app land FIRST. All 16 tool subdomains ship in a locked priority sequence behind them. 5 books drafted in parallel (Oriz Me first, full draft; other 4 chapter outlines only). Books-app stays a static catalog. Ships under per-channel monetisation matrix, STT-friendly grill rounds, and India-banned-Telegram constraint.
URL shortener three-tier free stack — s.oriz.in primary, TinyURL fallback, GitHub Gist redirect zero-infra — Three-tier URL shortener stack, all free, no card. Tier 1: self-hosted s.oriz.in CF Worker (primary, edge-cached 301s). Tier 2: TinyURL API (fallback, unlimited free, no auth, no card). Tier 3: GitHub Gist HTML meta-refresh redirect (zero-infra, last-resort). Quota math shows the family sits at ~1-2% of the CF Worker free envelope.
URL shortener quota mitigation — cache the 301 itself at the CF edge — s.oriz.in is a Cloudflare Worker. Free tier is 100K requests/day per script. We send Cache-Control: public, max-age=31536000, immutable on every 301 redirect so CF's edge caches the redirect itself; subsequent visitors hit the cache, not the Worker. With caching, only the first visitor per URL per edge POP per year burns a Worker request. Realistic upper bound at family-wide traffic is ~1-2K requests/day — well under 100K. No external shortener required.
Userscript creation flow: prototype in Tweeks, port to portable .user.js — For new userscript ideas, use Tweeks (YC-backed AI browser extension at tweeks.io that generates per-site JS from plain English) as a fast in-browser PROTOTYPE. If the result is keepable, copy the generated JS, port to a proper Tampermonkey-format .user.js with a metadata block (@name, @namespace, @version, @match, @grant, @updateURL pointing at GitHub raw), commit to chirag127/userscripts monorepo, cross-publish to Greasefork + OpenUserJS. This gets AI generation speed PLUS portable + auditable + versionable artifacts without vendor lock-in.
UTM-only marketing attribution — Marketing attribution rides on UTM query parameters injected into outbound links, captured by PostHog + Cloudflare Web Analytics. No paid attribution tool, no SaaS click-tracker, no bounce-redirect domain. oriz-kit ships to enforce kebab-case naming.
Voice / SMS — deferred; route via Knock when needed — No standalone voice or SMS provider in 2026-06-20. Twilio + Vonage rejected on card-on-file grounds. If/when SMS becomes needed, the family routes it through Knock's bundled SMS channel — already locked as the multi-channel notification orchestrator (10K notifs/mo free).