Skip to content
Resource
DocsTourSlicesBest PracticeAgentsInstall

Command Palette

Search for a command to run...

New
  • Changelog

Changelog

Release notes

Changelog

What changed in each rr release — page 21 of 25. Full prose history in CHANGELOG.md.

MAY212026
FeatureBX-waveMay 21, 2026

admin-panel/settings real impl — sixth + final BS-pattern block (100% block coverage)

Sixth and final admin-panel block graduates from generic AdminFeatureCard stub to a real interactive view. ALL 6 ADMIN PANEL BLOCKS NOW REAL (users + audit-log + ai-config + analytics + webhooks + settings). SettingsBlockView ships with a 4-tab layout (Identity / Integrations / API keys / Danger zone). Identity tab: live editable workspace name + URL slug (auto-sanitized to a-z0-9-) + timezone Select (7 IANA zones) + language Select (4 locales) + contact email — all wired to local state. Integrations tab: 6-service grid (Slack messaging, Resend email, Stripe payments, Vercel deploy, GitHub vcs, DOKU payments) each with connected/disconnected/error status badge, category label, status detail line, Connect/Configure/Reconnect button, and docs link. API keys tab: 3 seed keys with scope badge (read / read-write / admin), masked tail, created date + last-used relative, copy button, revoke action (wired). Danger zone: 3 destructive actions (Transfer ownership / Archive workspace / Delete workspace) with descriptive subtext and destructive Button variant. Pattern identical to prior 5: _shared/admin-panel/blocks/settings/{types, seed, view, identity-form, integration-grid, api-keys-list} + final dispatch case. AdminFeatureStubPage's comment block updated to reflect 100% coverage. AdminFeatureCard retained as fallback for any future segment added to ADMIN_PANEL_BLOCKS before a real view ships.

NEW files

  • _shared/admin-panel/blocks/settings/types.ts — WorkspaceIdentity + IntegrationStatus + Integration + ApiKey
  • _shared/admin-panel/blocks/settings/seed.ts — DEFAULT_IDENTITY + 7 TIMEZONES + 4 LANGUAGES + 6 INTEGRATIONS + 3 SEED_KEYS + tone tables
  • _shared/admin-panel/blocks/settings/SettingsBlockView.tsx — orchestrator (4-tab + DangerZone)
  • _shared/admin-panel/blocks/settings/identity-form.tsx — name + slug auto-sanitize + timezone + language + email
  • _shared/admin-panel/blocks/settings/integration-grid.tsx — 6-service status grid
  • _shared/admin-panel/blocks/settings/api-keys-list.tsx — list with revoke + masked tail + last-used relative

Dispatcher final state

  • AdminFeatureStubPage: added `if (segment === "settings") return <SettingsBlockView />;` case
  • Comment updated: BS-canary → BX-wave (2026-05-20 → 2026-05-21) — all 6 blocks real
  • AdminFeatureCard retained as the future-segment fallback

Final coverage

  • 6 / 6 admin-panel blocks real (users · audit-log · ai-config · analytics · webhooks · settings) — 100%.
  • All 8 templates inherit all 6 real blocks via the shared dispatcher. Single edit propagates to 48 admin-panel routes (8 templates × 6 blocks).
  • BS-pattern (per-block: types + seed + view + sub-components + single-line dispatch case + ≤200 LOC cap) proven end-to-end.

What's next

  • Templates pivot — real Convex bindings for blocks that have a slice (users → rbac-roles, audit-log → audit-log, analytics → event-tracking, ai-config → ai-router). Webhooks + settings need new canonical slices.
  • Optional: extract a Mermaid/SVG architecture diagram for the dispatcher → block pattern, surface on /docs.
  • Optional: build `npx rr eject` per docs/architecture/eject-spec.md when commercialize trigger fires.
MAY212026
FeatureBW-waveMay 21, 2026

admin-panel/webhooks real impl — fifth BS-pattern block

Fifth admin-panel block graduates from generic AdminFeatureCard stub to a real interactive view. WebhooksBlockView ships with a 3-tab layout (Endpoints / Recent deliveries / Payload format) inside a shadcn Tabs. Endpoints tab shows 4 seed endpoints (Zapier CRM, Slack #ops, internal audit mirror, staging sandbox) with per-row status badge (active / paused / failing), event chips, masked secret tail, Test button, and a DropdownMenu with Pause/Resume + Rotate secret + Delete — all wired to local state so toggle/remove work live. Failing endpoint shows retry counter. Deliveries tab is a 12-row table (when, endpoint, event, status badge, HTTP code, ms, attempt-multiplier marker, replay action) covering delivered/failed/retry/pending. Payload tab shows a sample event body + the HMAC-SHA256 signature header consumers must verify (with 5-min replay protection note). Pattern identical to prior 4 blocks: _shared/admin-panel/blocks/webhooks/{types, seed, view, endpoint-row, delivery-table} + single dispatch case. No canonical slice yet — schema here would seed a future frontend/slices/webhooks/.

NEW files

  • _shared/admin-panel/blocks/webhooks/types.ts — WebhookEventName (8) + EndpointStatus (3) + WebhookEndpoint + DeliveryStatus (4) + WebhookDelivery
  • _shared/admin-panel/blocks/webhooks/seed.ts — STATUS_META + DELIVERY_META tone tables + 4 endpoints + 12 deliveries + SAMPLE_PAYLOAD + SAMPLE_SIGNATURE
  • _shared/admin-panel/blocks/webhooks/WebhooksBlockView.tsx — orchestrator (header stats + 3-tab Endpoints/Deliveries/Payload)
  • _shared/admin-panel/blocks/webhooks/endpoint-row.tsx — row with Test + DropdownMenu (Pause/Resume/Rotate/Delete) + event chips + secret tail
  • _shared/admin-panel/blocks/webhooks/delivery-table.tsx — 12-row recent deliveries grid with replay button

Dispatcher update

  • AdminFeatureStubPage: added `if (segment === "webhooks") return <WebhooksBlockView />;` case

Coverage

  • 5 of 6 admin-panel blocks now real (users, audit-log, ai-config, analytics, webhooks). Only settings remains as placeholder.
  • All 8 templates' webhooks routes auto-updated via shared dispatcher.
MAY212026
FeatureBV-waveMay 21, 2026

admin-panel/analytics real impl — fourth BS-pattern block (recharts)

Fourth admin-panel block graduates from generic AdminFeatureCard stub to a real interactive view — first one to use charts. AnalyticsBlockView ships with 4 KPI cards (page views, sessions, conversion, bounce rate — each with signed delta-vs-prev-period and good/bad coloring), a 30-day stacked area chart (views + sessions, recharts via shadcn chart wrapper with proper CSS-variable theming), a traffic-source donut + legend (Direct / Organic search / Referral / Social / Email with deterministic visit counts), a 5-step conversion funnel showing drop-off % between steps, and a top-pages table (path / title / avg duration / bounce rate / views). Range chips (7d/30d/90d) wired but seed is single 30-day series. Pattern identical to BS+BT+BU: _shared/admin-panel/blocks/analytics/{types, seed, AnalyticsBlockView, traffic-chart, sources-donut, funnel-and-pages} + a single dispatch case. All 8 templates' /admin/admin-panel/analytics routes auto-updated. Backed by frontend/slices/event-tracking/ (today config-only — events schema + ingest endpoint deferred to a separate wave that wires real Convex writes).

NEW files

  • _shared/admin-panel/blocks/analytics/types.ts — DayPoint + TrafficSource + PageStat + FunnelStep + KpiCardData
  • _shared/admin-panel/blocks/analytics/seed.ts — buildSeries() deterministic 30-day series + 4 KPI cards + 5 sources + 6 top pages + 5-step funnel
  • _shared/admin-panel/blocks/analytics/AnalyticsBlockView.tsx — orchestrator (header range chips + KPI grid + chart + donut + funnel + top-pages table)
  • _shared/admin-panel/blocks/analytics/traffic-chart.tsx — recharts AreaChart with gradient fills via shadcn ChartContainer + ChartConfig
  • _shared/admin-panel/blocks/analytics/sources-donut.tsx — recharts PieChart donut + legend list with visit counts + %
  • _shared/admin-panel/blocks/analytics/funnel-and-pages.tsx — FunnelList (drop-off % per step) + TopPagesTable

Dispatcher update

  • AdminFeatureStubPage: added `if (segment === "analytics") return <AnalyticsBlockView />;` case
  • Real impl backed by event-tracking slice

Coverage

  • 4 of 6 admin-panel blocks now real (users, audit-log, ai-config, analytics). 2 still placeholder (webhooks, settings).
  • All 8 templates' analytics routes auto-updated via shared dispatcher. Zero per-template touchpoints.
MAY212026
FeatureBU-waveMay 21, 2026

admin-panel/ai-config real impl — third BS-pattern block

Third admin-panel block graduates to a real interactive view. AiConfigBlockView ships with 4 providers (Anthropic, OpenAI, Mistral, Google), 10 models across 3 tiers (fast / balanced / frontier) with per-model context window + input/output cost per 1M tokens, an active-model picker grouped by provider in a shadcn Select with full pricing metadata in each option, system prompt textarea (4000 char cap, live counter), temperature + max-output-tokens sliders, and a moderation rule list with 5 rules (toxicity threshold, PII redaction, off-topic refusal, competitor mention threshold, external-link allowlist) each toggleable via Switch with graded rules exposing a 0-1 Slider for threshold. Reset button restores defaults. Provider cards show status badge (connected / missing-key / rate-limited), masked key tail, and docs link. Pattern identical to BS+BT: _shared/admin-panel/blocks/ai-config/{types, seed, AiConfigBlockView, provider-card, moderation-row, knobs} + a single dispatch case in AdminFeatureStubPage. All 8 templates' /admin/admin-panel/ai-config routes auto-updated. Backed by frontend/slices/ai-router/ (barrel-only today, real impl deferred until a separate wave wires provider adapters + a Convex key vault).

NEW files

  • _shared/admin-panel/blocks/ai-config/types.ts — ProviderId + ProviderStatus + AiProvider + ModelTier + AiModel + ModerationRule + AiConfig
  • _shared/admin-panel/blocks/ai-config/seed.ts — 4 providers + STATUS_META + TIER_META + 10 models + DEFAULT_CONFIG + DEFAULT_MODERATION (5 rules)
  • _shared/admin-panel/blocks/ai-config/AiConfigBlockView.tsx — orchestrator (header stats + provider grid + active model card + prompt+sampling + moderation list)
  • _shared/admin-panel/blocks/ai-config/provider-card.tsx — provider tile (status badge + masked key + rotate/connect button + docs link)
  • _shared/admin-panel/blocks/ai-config/moderation-row.tsx — rule row (Switch + optional threshold Slider)
  • _shared/admin-panel/blocks/ai-config/knobs.tsx — Stat tile + Knob slider+label helpers (extracted to keep orchestrator ≤200 LOC)

Dispatcher update

  • AdminFeatureStubPage: added `if (segment === "ai-config") return <AiConfigBlockView />;` case
  • Real impl backed by ai-router slice (today barrel-only)

Coverage

  • 3 of 6 admin-panel blocks now real (users, audit-log, ai-config). 3 still placeholder (analytics, webhooks, settings).
  • All 8 templates' ai-config routes auto-updated via shared dispatcher. Zero per-template touchpoints.
MAY202026
FeatureCK-1DMay 20, 2026

workspace-shell lifted from superspace — atomic NavContext

New full-stack slice `workspace-shell` lifted from superspace. Unified workspace + menu navigation primitive replacing the silo'd menu-store + workspace-store. NavContext = (workspaceId, menuSetId) atomic pair with resolver chain (user cache → user assignment → workspace default → none). 2-tier dropdown switcher (workspace radio + menuSet picker), ContextBadge header chip, full editor with tabs (menus / workspace tree / settings), tiered RBAC (menus.manage for admin, menus.fork for user-personal copy). Convex tables prefixed `workspaceShell_*` (7 tables: menuSets, menuItems, itemComponents, wsAssignments, userAssignments, rolePerms, navContext). Audit-log dependency is graceful (try/catch — slice still works if audit-log not installed). 7-phase rollout: P0 scaffold + trio + schema → P1 idempotent migration menus/* → workspaceShell_* (in-memory map for 4096 read-op limit) → P2 NavContextProvider + useNavContext hook + getEffectiveMenuItems with role filter → P3 WorkspaceSwitcher v2 + ContextBadge + MenuSetPicker → P4 editor tabs with CRUD mutations → P5 dual-read wiring into primary sidebar (NavContext primary, legacy fallback) → P6 30-day deprecation shims for menu-store + workspace-store (auto-removal 2026-06-19).

New slice

  • workspace-shell 1.0.0 — atomic NavContext primitive

Tables (workspaceShell_*)

  • menuSets / menuItems / itemComponents
  • wsAssignments / userAssignments / rolePerms
  • navContext — per-user atomic (wsId, menuSetId) cache

Components

  • NavContextProvider + useNavContext + useNavContextRequired
  • WorkspaceSwitcher — 2-tier dropdown
  • MenuSetPicker — 3-tier (user / workspace / system) radio
  • ContextBadge — header chip
  • DeprecationBanner — 30-day countdown for legacy shims

RBAC

  • menus.manage — admin edits workspace-default menuSet
  • menus.fork — user creates personal copy via forkMenuSet
  • menus.view / savedViews.{view,manage,manage_shared} — already shipped
MAY202026
FeatureBT-waveMay 20, 2026

admin-panel/audit-log real impl — second BS-pattern block (after Users)

Second admin-panel block graduates from generic AdminFeatureCard stub to real interactive view. AuditLogBlockView ships with 14 seed events covering all 10 actions (create/update/delete/publish/unpublish/invite/revoke/login/logout/export) across 8 entity types (page/user/role/webhook/setting/post/workflow/session) at 3 severities (info/warn/alert). Interactive filters: text search across actor + entity + diff, action chip filter (8 chips), severity chip filter (4 chips), live count badge. Each event row shows actor avatar + name, action badge with tone, entity type → entity label, optional diff summary (e.g. `permissions: +manage:workflows`), relative timestamp, IP, entity id. Pattern identical to BS Users canary: _shared/admin-panel/blocks/audit-log/{types.ts, seed.ts, AuditLogBlockView.tsx, event-row.tsx} + a single dispatch case in AdminFeatureStubPage. Single edit → all 8 templates' /admin/admin-panel/audit-log routes serve the real UI. Backed by frontend/slices/audit-log/ contract (AuditLogBindings → real Convex impl post-eject, see eject-spec.md). NEXT BLOCKS (4 remaining, one wave each): ai-config / analytics / webhooks / settings.

NEW files

  • _shared/admin-panel/blocks/audit-log/types.ts — AuditAction (10) + AuditEntityType (8) + AuditSeverity (3) + AuditEventRow shape mirroring slice's AuditEvent
  • _shared/admin-panel/blocks/audit-log/seed.ts — ACTION_META + SEVERITY_META tone tables + 14 demo events
  • _shared/admin-panel/blocks/audit-log/AuditLogBlockView.tsx — header stats + 3 severity cards + filter bar + filtered list
  • _shared/admin-panel/blocks/audit-log/event-row.tsx — EventRow + SeverityCard + formatRelative helpers (extracted to keep view ≤200 LOC)

Dispatcher update

  • AdminFeatureStubPage: added `if (segment === "audit-log") return <AuditLogBlockView />;` case
  • Users block remains live from BS-wave (unchanged)
  • Real-impl pattern backed by audit-log slice contract

Coverage

  • 2 of 6 admin-panel blocks now real (users, audit-log). 4 still placeholder (ai-config, analytics, webhooks, settings).
  • All 8 templates' audit-log routes auto-updated via shared dispatcher. Zero per-template touchpoints.
MAY202026
FeatureBS-waveMay 20, 2026

notion-like tag + theme-presets slice + lift-status audit (open-silong sync round 1)

Round 1 of pushing every nosion (open-silong) slice into rr. Outcome: 6 slices truly synced + tagged (1 NEW + 5 pre-existing), 31 slices identified as blocked-pending-adapter due to convex coupling, missing shared primitives (responsive-dialog / responsive-alert-dialog), or lucide-react version drift (rr ^1.16 vs nosion ^0.462). Tag `notion-like` added to all open-silong-derived catalog entries so consumers can filter by source upstream. Lift status audit lives upstream in docs/rr-sync/lift-status.md.

NEW slice

  • theme-presets — tweakcn theme preset loader + 30+ color schemes (no backend, pure React + Tailwind v4 + next-themes; storage key `nosion:theme-preset` preserved verbatim for back-compat)

`notion-like` tag added (5 entries)

  • command-menu — renderless ⌘K
  • icon-picker — emoji + lucide picker
  • notion-blocks — 4-primitive bundle
  • notion-shell — 18-component wrapper set
  • theme-presets — NEW (above)

Blocked-pending-adapter (31 slices, registry tracked at rr-sync.json upstream)

  • Convex coupling (admin-panel:18, editor:10, feedback:3, comments:3, ai-agent/cover/files/inbox/templates/workspace-io:2 each, plus 6 with 1 convex import) — need adapter pattern + storage-adapter interface to lift
  • Missing shared primitives — responsive-dialog, responsive-alert-dialog need lift first OR slice must adopt @/components/ui/dialog wrapper
  • lucide-react version drift — rr ^1.16 (missing Github icon used by shared/icon-picker copy); resolve via bump or icon swap
  • Nosion-named source files (comments/adapters/nosionStandalone.ts, command-palette/adapters/NosionCommandPalette.tsx) — scrub script renames CONTENT but not file BASENAMES; need post-scrub rename step

How to query (consumers)

  • rr catalog UI filter by tag `notion-like` shows everything open-silong-derived
  • node scripts/rr-sync-status.mjs (upstream) shows file-level drift for the 6 truly-synced
  • docs/rr-sync/lift-status.md (upstream) lists every slice + status + blocker reason
MAY202026
FeatureBR-waveMay 20, 2026

Wildcard subdomain demo routing — 8 templates × portfolio-grade domain via host-based rewriter (one codebase, zero sync)

8 website templates now each get a portfolio-quality demo URL: demo-konsultan.rahmanef.com, demo-personal-branding.rahmanef.com, etc. ARCHITECTURE: all 8 subdomains resolve to the same Next.js deployment — proxy.ts inspects the Host header and rewrites /demo-<short>.rahmanef.com → /preview/<slug>/public (or /admin → /preview/<slug>/dashboard/admin). Zero fork, zero sync engine, zero webhook. Editing any template in rr → push to main → Dokploy rebuilds → all 8 subdomains reflect change in next request because they ARE the same codebase, just different entry points. CHOSEN OVER FORK-rr-per-template (rejected — 95% dead-weight: catalog, CLI, MCP, 38 other layouts) AND multi-tenant single-deployment without subdomain (rejected — no portfolio storytelling value). FILES: lib/content/template-subdomains.ts (NEW — SSOT map subdomain→slug, helpers resolveDemoSlug + getDemoUrl); proxy.ts (NEW — Next.js 16 root proxy, pass-through for _next/api/brand-assets/favicon/sitemap/robots/llms, rewrite for demo-* hosts); components/site/template-detail.tsx (Live demo button on /layouts/<slug> detail page); docs/architecture/subdomain-routing.md (NEW — full ops doc for Cloudflare wildcard DNS + Dokploy custom domain + SSL setup). MANUAL OPS REQUIRED (Rahman, one-time): (1) Cloudflare DNS add wildcard A record *.rahmanef.com → Dokploy IP, proxied. (2) Dokploy add *.rahmanef.com to resource-site deployment custom domains. (3) Verify SSL via Cloudflare proxy (orange cloud) OR Let's Encrypt DNS-01.

NEW infrastructure

  • lib/content/template-subdomains.ts — SSOT mapping (subdomain → slug); resolveDemoSlug(host) + getDemoUrl(slug) helpers
  • proxy.ts — Next 16 root proxy, host-based rewriter with safe pass-through list (_next, api, brand-assets, favicon, sitemap, robots, llms, manifest)
  • docs/architecture/subdomain-routing.md — Cloudflare + Dokploy ops walkthrough

8 demo subdomains live (after DNS+Dokploy setup)

  • demo-personal-branding.rahmanef.com → personal-brand-os
  • demo-konsultan.rahmanef.com → konsultan-os
  • demo-kreator.rahmanef.com → kreator-studio-os
  • demo-wirausaha.rahmanef.com → wirausaha-os
  • demo-riset.rahmanef.com → riset-kit
  • demo-agency.rahmanef.com → agency-studio-os
  • demo-saas.rahmanef.com → saas-marketing-os
  • demo-nosion.rahmanef.com → notion-page-clone-os

User-visible

  • Each /layouts/<slug> detail page (template subset) now shows a 'Live demo' button linking to the matching subdomain
  • Subdomain root → public landing. /admin → dashboard admin panel. localStorage isolated per subdomain.

What this is NOT

  • Not a per-template repo fork (rejected — inherits 95% dead-weight)
  • Not a per-template Convex backend (deferred — `npx rr eject` future CLI)
  • Not affecting rahmanef.com personal site (different deployment, untouched)
  • Not affecting resource.rahmanef.com canonical main site (pass-through)
MAY202026
ImprovementBQ-waveMay 20, 2026

Operasi Mise M5 — public taxonomy rollout (Features → Modules, recipes retired) + SliceEntry resourceType/domain/maturity

Final phase of Operasi Mise. Public-facing taxonomy rename + additive data model extension. CHANGES THAT USERS SEE: (1) Navbar 'Features' → 'Modules'. URL stays /slices for back-compat with inbound links + bookmarks; internal code keeps 'slice' naming (slice.json contract unchanged). (2) Command palette: 'Recipes' group removed (recipes.ts has been an empty deprecated stub since 2026-05-12), replaced with 'Modules' group sourcing from slices[]. Pages quick-action 'Recipes' → 'Modules'. (3) Homepage ShowcaseGrid kind='recipes' (which silently rendered 0 cards) → kind='slices'. Heading 'Feature recipes' → 'Modules'. (4) Hero subtitle: '{layouts} layouts, {recipes} recipes' → '{layouts} layouts, {slices} modules'. (5) Docs intro page: dropped recipe count line + Recipes card; replaced with Modules card pointing at /slices. (6) Agents page: 'recipe' → 'module'/'resource' in 4 spots. ADDITIVE DATA MODEL: SliceEntry gains optional resourceType ('primitive'|'component'|'block'|'module'), domain ('auth'|'rbac'|'cms'|'crm'|'commerce'|'payments'|'ai'|'data'|'search'|'messaging'|'admin'|'infra'), maturity ('draft'|'beta'|'stable'). None populated yet — backfill is a separate wave so site filter chips + builder UI can opt in incrementally. Resource type in resources.ts surfaces these (maturity defaults to 'stable' when omitted). recipes.ts retained as silent dead stub (10 import sites still reference it; coordinated removal is post-Mise). Mise complete: M1-M5 shipped, ready to resume development with BR (notion-page-clone sync to admin-panel real impl).

Public label renames

  • Navbar Features → Modules (top-navbar.tsx)
  • Command palette: Recipes group removed; Modules group added (sources from slices[])
  • Homepage ShowcaseGrid kind: recipes → slices
  • Hero subtitle: recipes count → slices count
  • Docs intro: Recipes card → Modules card
  • Agents page: 'recipe' → 'module' (4 mentions)

Data model extension (additive, optional)

  • SliceEntry.resourceType?: 'primitive'|'component'|'block'|'module'
  • SliceEntry.domain?: 'auth'|'rbac'|'cms'|'crm'|'commerce'|'payments'|'ai'|'data'|'search'|'messaging'|'admin'|'infra'
  • SliceEntry.maturity?: 'draft'|'beta'|'stable' (defaults to 'stable' when omitted)
  • Resource type in resources.ts surfaces all three; layout entries inherit maturity='stable'

Bug fix (side effect)

  • Homepage ShowcaseGrid kind='recipes' was rendering 0 cards (empty stub) — replaced with kind='slices' (44 cards live)

Operasi Mise complete (M1-M5)

  • M1 BL docs SSOT · M2 BM route SSOT · M3 BN resources registry · M4 BO manifest+helpers · M5 BQ taxonomy
  • Resume development next: BR — sync notion-page-clone slice into admin-panel real impl
MAY202026
ChoreBP-waveMay 20, 2026

Pivot pointer — notion-page-clone-os DEMO + notion-shell SLICE link to open-silong OSS product

Strategic positioning update. The upstream Notion-clone source (this rr's notion-shell + notion-page-clone-os) has been rebranded + open-sourced as github.com/rahmanef63/open-silong (silong.rahmanef.com, MIT). rr keeps both surfaces as DEMO + SLICE distribution; for production users (multi-workspace + auth + sharing + Convex), the rr catalog now points to the open-silong repo as the canonical product. Two-surface model documented in the upstream repo's docs/rr-sync/2026-05-20-pivot-nosion-source-of-truth.md. No code changes in rr — only catalog copy (description + agentRecipe) updates to call out the pointer.

Catalog copy updates

  • notion-page-clone-os layouts entry — title clarifies 'localStorage demo'; description calls out github.com/rahmanef63/open-silong as the production stack pointer; source field updated
  • notion-shell slices entry — agentRecipe adds product-pointer block clarifying that rr's slice is the EMBED surface and open-silong repo is the FULL PRODUCT surface

Why

  • rr monorepo (40+ slices) too broad for outside OSS contributors — focused single-product repo lowers barrier
  • Real users want Convex-backed product (auth + multi-user + sharing); rr template is localStorage demo only
  • Two-surface model: rr = template marketplace + lifted slice; open-silong = production OSS Notion clone

Sync direction unchanged

  • open-silong → rr (lift-only via scripts/rr-sync/ in open-silong repo)
  • rr never modifies the lifted source; fixes originate in open-silong + re-sync
NewerPage 21 / 25Older