learning_ai_notes/web/src/lib/product-config.ts
Saravana Achu Mac a697752d15 feat: implement WEB_AI_FAST_ROADMAP (web + backend + docs)
Phase 1: Command palette (⌘K), editor autosave with quiet auto-saves, dashboard
saved views from API + quick links + onboarding seed CTA, explicit task scan panel.

Phase 2: Context pack formatter with YAML frontmatter, copy on note + workspace .md export.

Phase 3: ADR for hybrid search without embeddings; POST /notes/search (lexical +
ranked hybrid); search UI mode toggle.

Phase 4: POST copilot + suggest-title; in-editor copilot actions; /chat retrieval
answers with citations (backend chat.rag_enabled).

Phase 5: Settings MCP snippet, offline queue note, API token deferral; DEEP_LINKS.md.

Phase 6: Note shares + public GET; share page; POST onboarding-seed.

Phase 7: note_versions on PATCH; version panel; create-note templates; PWA manifest.

Flags: search.hybrid_enabled, copilot.enabled, chat.rag_enabled, onboarding.seed_enabled.
Made-with: Cursor
2026-03-31 13:00:36 -07:00

21 lines
1.2 KiB
TypeScript

import productIdentity from "../../../shared/product.json";
export const PRODUCT_NAME = process.env.NEXT_PUBLIC_PRODUCT_NAME ?? productIdentity.displayName;
export const PRODUCT_ID = process.env.NEXT_PUBLIC_PRODUCT_ID ?? productIdentity.productId;
export const PLATFORM_SERVICE_URL =
process.env.NEXT_PUBLIC_PLATFORM_SERVICE_URL ?? "http://localhost:4003/api";
export const PLATFORM_SERVICE_ORIGIN =
process.env.NEXT_PUBLIC_PLATFORM_SERVICE_ORIGIN ??
PLATFORM_SERVICE_URL.replace(/\/api\/?$/, "");
export const NOTES_API_URL = process.env.NEXT_PUBLIC_NOTES_API_URL ?? "http://localhost:4016/api";
/** Safe on SSR — call from client when copying share links. */
export function getWebAppOrigin(): string {
if (typeof window !== "undefined") return window.location.origin;
return process.env.NEXT_PUBLIC_WEB_APP_ORIGIN ?? "";
}
export const MCP_SERVER_URL = process.env.NEXT_PUBLIC_MCP_SERVER_URL ?? "http://localhost:4050/mcp";
export const EXTRACTION_SERVICE_URL = process.env.NEXT_PUBLIC_EXTRACTION_SERVICE_URL ?? "http://localhost:4005";
export const DIAGNOSTICS_URL = process.env.NEXT_PUBLIC_DIAGNOSTICS_URL ?? PLATFORM_SERVICE_ORIGIN;
export const TELEMETRY_TRANSPORT =
process.env.NEXT_PUBLIC_TELEMETRY_TRANSPORT === "beacon" ? "beacon" : "fetch";