Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
65 lines (56 loc) · 2.24 KB
/
Copy path.env.example
File metadata and controls
65 lines (56 loc) · 2.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
DATABASE_URL=
NEXT_PUBLIC_APP_URL=http://localhost:3000
# Local-first auth fallback. Request headers `x-inksolver-user-id`,
# `x-inksolver-user-email`, and `x-inksolver-user-name` override these in dev.
INKSOLVER_DEMO_USER_ID=
INKSOLVER_DEMO_USER_EMAIL=
INKSOLVER_DEMO_USER_NAME=
INKSOLVER_DEMO_USER_IMAGE_URL=
INKSOLVER_TRUST_REQUEST_HEADERS=
INKSOLVER_ALLOW_DEMO_AUTH=
INKSOLVER_TRUST_PROXY_HEADERS=
INKSOLVER_ADMIN_TOKEN=
INKSOLVER_ENABLE_LOCAL_FILE_ROUTES=
# Email allowed to view the /readiness dashboard in production.
INKSOLVER_OWNER_EMAIL=
# Production auth gate. The local-first auth context remains active until
# Clerk middleware/session resolution is installed and these keys are set.
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
# Point signed-out redirects at the in-app auth pages.
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
# Primary multimodal solver (NVIDIA NIM). Without an API key the app mock-solves
# in development and returns a "solver not configured" error in production.
NVIDIA_API_KEY=
NVIDIA_MODEL=stepfun-ai/step-3.7-flash
NVIDIA_TIMEOUT_MS=60000
# Optional USD-per-million-token rates used to record real solve costs.
NVIDIA_INPUT_COST_PER_MTOK=
NVIDIA_OUTPUT_COST_PER_MTOK=
# Gemini powers follow-up chat and semantic-search embeddings.
GEMINI_API_KEY=
GEMINI_MODEL=gemini-2.5-pro
GEMINI_CHAT_MODEL=gemini-2.5-flash
SYMPY_VERIFIER_URL=
SYMPY_VERIFIER_TIMEOUT_MS=3500
# Required in production: without a valid key tldraw blanks the canvas ~5s
# after load on https deployments (localhost is unaffected). Free key: tldraw.dev
NEXT_PUBLIC_TLDRAW_LICENSE_KEY=
LEMON_SQUEEZY_CHECKOUT_URL=
LEMON_SQUEEZY_WEBHOOK_SECRET=
INKSOLVER_ALLOW_UNSIGNED_WEBHOOKS=
POSTHOG_KEY=
POSTHOG_HOST=https://app.posthog.com
SENTRY_INGEST_URL=
# Optional Upstash Redis for rate limits shared across serverless instances.
# Without these, limits fall back to per-instance in-memory counting.
UPSTASH_REDIS_REST_URL=
UPSTASH_REDIS_REST_TOKEN=
# Phase 3 uses local .data/snapshots storage when R2 credentials are absent.
# Phase 7 will wire these credentials into the production object-storage path.
CLOUDFLARE_R2_ACCOUNT_ID=
CLOUDFLARE_R2_ACCESS_KEY_ID=
CLOUDFLARE_R2_SECRET_ACCESS_KEY=
CLOUDFLARE_R2_BUCKET=
CLOUDFLARE_R2_PUBLIC_URL=