Getting Started

Environment

Important Urmate environment variables grouped by feature area.

Environment

Urmate environment values live in /root/apps/urmate/.env.local. Use /root/apps/urmate/.env.example as the baseline. Never commit real secrets.

Core

VariablePurpose
DATABASE_URLMain PostgreSQL connection used by Prisma.
NEXT_PUBLIC_SITE_URLPublic site URL for links and callbacks.
NEXT_PUBLIC_SITE_NAMEPublic site name.
NEXT_ALLOWED_DEV_ORIGINSExtra allowed dev origins for Next dev server.
PORTOptional app port.

Auth

VariablePurpose
BETTER_AUTH_URLBetter Auth base URL.
BETTER_AUTH_TRUSTED_ORIGINSTrusted origins for auth.
BETTER_AUTH_SECRETRequired auth signing secret.
GOOGLE_CLIENT_ID, GOOGLE_SECRETGoogle login OAuth client.
GITHUB_CLIENT_ID, GITHUB_SECRETGitHub OAuth.
RESEND_API_KEY, RESEND_FROM_EMAILEmail sending.

Google Calendar

Instructor calendar uses a separate OAuth client:

VariablePurpose
GOOGLE_CALENDAR_CLIENT_IDCalendar OAuth client id.
GOOGLE_CALENDAR_SECRETCalendar OAuth secret.

Redirect URI:

http://localhost:3000/api/study/instructor/calendar/callback

For production or tunnel testing:

https://your-origin.example/api/study/instructor/calendar/callback

Chat Channels

VariablePurpose
CHAT_CHANNEL_PUBLIC_ORIGINPublic HTTPS origin used for Telegram/Discord/Meta webhooks.
CHAT_CLOUDNEST_PROVIDERStorage provider for chat assets.
CHAT_CLOUDNEST_STORAGE_ACCOUNT_IDChat storage account.
CHAT_CLOUDNEST_FOLDER_IDChat storage folder.
REDIS_URLOptional Redis.
NEXT_PUBLIC_SOCKET_URLBrowser socket URL.
SOCKET_PORTSocket server port.

Circles

VariablePurpose
CIRCLES_APP_BASE_PATHUsually /circles-app.
CIRCLES_INTERNAL_URLInternal Circles service origin.
CIRCLES_PROXY_SECRETShared proxy secret.
CIRCLES_API_SECRET, CIRCLES_API_SECRET_KEYAPI bridge secrets if enabled.
CIRCLES_DB_HOST, CIRCLES_DB_PORT, CIRCLES_DB_NAME, CIRCLES_DB_USER, CIRCLES_DB_PASSWORD, CIRCLES_DB_PREFIXCircles/Grupo database bridge.

Provider Key Encryption

VariablePurpose
LLM_PROVIDER_SECRET_KEYEncrypts saved provider keys.
LLM_PROVIDER_DIGEST_KEYCreates provider key digests.
LLM_PROVIDER_SECRET_KEY_VERSIONCurrent key version label.

XRouter and AI Providers

Common variables:

  • XROUTER_API_KEY
  • XROUTER_MODEL
  • XROUTER_FALLBACK_PROVIDER
  • OPENROUTER_API_KEY
  • OPENAI_API_KEY
  • OPENAI_BASE_URL
  • ANTHROPIC_API_KEY
  • GOOGLE_GENERATIVE_AI_API_KEY
  • GEMINI_API_KEY
  • AWS_BEARER_TOKEN_BEDROCK
  • GOOGLE_VERTEX_PROJECT
  • HUGGINGFACE_API_KEY
  • TOGETHER_API_KEY
  • FIREWORKS_API_KEY
  • XAI_API_KEY

Study LMS

VariablePurpose
STUDY_LMS_DATABASE_URL, LMS_DATABASE_URLOptional external LMS DB.
STUDY_LMS_MEDIA_BASE_URL, LMS_MEDIA_BASE_URLLMS media base URL.
STUDY_CLOUDNEST_PROVIDERStudy storage provider.
STUDY_INSTRUCTOR_CLOUDNEST_PROVIDERInstructor upload storage.
NCERT_CLOUDNEST_PROVIDERNCERT sync storage.
STUDY_ASSIGNMENT_UPLOAD_MAX_BYTESAssignment upload limit.
STUDY_INVITES_FROM_EMAILStudy invite sender.

Billing

VariablePurpose
RAZORPAY_KEY_ID, RAZORPAY_KEY_SECRET, RAZORPAY_WEBHOOK_SECRETRazorpay.
STRIPE_SECRET_KEY, STRIPE_PUBLISHABLE_KEY, STRIPE_WEBHOOK_SECRETStripe.
PAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET, PAYPAL_WEBHOOK_ID, PAYPAL_ENVPayPal.
GOOGLE_PAY_MERCHANT_ID, GOOGLE_PAY_ENVIRONMENTGoogle Pay.

Runtimes and Infra

VariablePurpose
INFRA_RELAY_URL, INFRA_RELAY_HTTP_URLVPS relay URLs.
INFRA_RELAY_SIGNING_SECRETRelay signing secret.
URMATE_GAME_ENGINE_*Game engine install/workspace/repo settings.
URMATE_CODE_TUTOR_*Code Tutor runtime and AI settings.
CODESANDBOX_API_KEY, E2B_API_KEYExternal runtime providers.
Copyright © 2026