@linara/infrastructure
Client factory functions — connection status and signatures
environment variables
factory functions
createBrowserClient(url, publishableKey)
Browser-side Supabase — respects RLS, persists session
via @supabase/supabase-js
createServerClient(url, key, cookieStore)
SSR Supabase — reads/writes session cookies, use publishable key
via @supabase/ssr
createAdminClient(url, serviceRoleKey)
Service-role Supabase — bypasses RLS, no cookie management
via @supabase/supabase-js
getOpenAIClient()
Singleton OpenAI client using LINARA_OPENAI_PRIMARY
via openai
getAnthropicClient()
Singleton Anthropic client using ANTHROPIC_API_KEY
via @anthropic-ai/sdk
getGeminiClient()
Singleton Gemini client using GEMINI_API_KEY
via @google/generative-ai
new Cache<T>(options)
Generic LRU/TTL cache — wraps @upstash/redis or in-memory fallback
via @upstash/redis