Internals

App map

Routes, layouts, shared modules, and Content collections in the Nuxt app.
Living notes for builders. Paths and names may change as the app evolves.

High-level routes

PathPurposeAuth
/Marketing landingPublic
/pricingTeam plan + forever-free toolsPublic
/booleanPublic Boolean generator (browser-local history for guests)Public
/linkedinFeature landing — LinkedIn panel (Team)Public
/google-xrayFeature landing — Google SERP workspace panel (Team)Public
/visitedFeature landing — SERP visit timestamps (forever free)Public
/privacyPrivacy policy (placeholder until legal review)Public
/termsTerms of service (placeholder until legal review)Public
/docs, /docs/**This documentationPublic
/login, /signup, /confirmAuth flowsPublic
/app, /app/**DashboardRequired
/app/booleanWorkspace Boolean generatorRequired
/app/boolean/historyWorkspace Boolean history (Mine/Team)Required

Supabase redirect options only include /app(/*)?, so marketing, docs, pricing, feature landings, and /boolean stay public.

Layouts

LayoutUsed by
defaultLanding (/), pricing, feature landings, public Boolean — header, main, footer
docsDocumentation — docs header, sidebar, footer, search
authLogin / signup / confirm
dashboardAuthenticated /app shell (includes Boolean in primary nav)

Content collections

Configured in apps/modri/content.config.ts:

  • content — landing page data from apps/modri/content/index.yml
  • pricing — pricing page data from apps/modri/content/pricing.yml
  • features/linkedin, /google-xray, /visited YAML pages
  • docs — markdown under apps/modri/content/docs/** (this site)

Internal product/GTM notes in the repo-root docs/ folder are not published here.

Key directories

apps/modri/            Nuxt 4 web app (@sourcing/modri)
  app/               Pages, layouts, components
  content/           Nuxt Content (landing YAML + docs markdown)
  server/            Nitro API routes
apps/modri-extension/      WXT Chrome extension (LinkedIn + Google SERP)
shared/
  boolean/           Pure Boolean string generator (web + tests)
  contact/           LinkedIn URL canonicalization shared with extension
  ui/                Theme tokens / brand used by web + extension
supabase/            Migrations and config
docs/                Internal (unpublished) product & technical notes
ui/                  Shared Vue UI pieces (e.g. ActivityTimeline) imported by extension

Feature entry points (builders)

FeatureWebExtensionShared logic
Boolean search/boolean, /app/boolean, /app/boolean/history, apps/modri/app/components/boolean/— (copy X-ray → Google)shared/boolean/generate.ts
LinkedIn profile memoryDashboard contactsentrypoints/linkedin.content/shared/contact/linkedinUrl.ts
Google X-ray SERP panelentrypoints/google.content/Same URL helpers + apps/modri-extension/contact/

See Extension and Boolean search for implementation notes.