- Added support for parsing and generating additional vCard properties including GENDER, LOGO, SOUND, LABEL, CALURI, CALADRURI, FBURL, and SOURCE. - Extended ContactCard interface to include new fields such as gender, media, anniversaries, online services, and personal info. - Implemented logic to handle multi-part TLDs for domain extraction in avatars. - Improved avatar component to prioritize contact photos and handle inline images in emails. - Updated localization files to include new fields and labels for contact details. - Refactored contact store to expose a method for retrieving contact photos. - Enhanced unit tests to cover new vCard properties and ensure correct parsing and generation.
95 lines
3.7 KiB
Bash
95 lines
3.7 KiB
Bash
# JMAP Webmail — Production Configuration
|
|
# Copy this file to .env.local and fill in your values.
|
|
# For development with the built-in mock server, see .env.dev.example instead.
|
|
|
|
# =============================================================================
|
|
# JMAP Server (required)
|
|
# =============================================================================
|
|
|
|
# App name displayed in the UI
|
|
APP_NAME=JMAP Webmail
|
|
|
|
# URL of your JMAP-compatible mail server (required)
|
|
JMAP_SERVER_URL=https://your-jmap-server.com
|
|
|
|
# =============================================================================
|
|
# Stalwart Mail Server Integration
|
|
# =============================================================================
|
|
|
|
# Enable Stalwart-specific features (password change, sieve filters, etc.)
|
|
# Set to "false" to disable if using a non-Stalwart JMAP server.
|
|
# STALWART_FEATURES=true
|
|
|
|
# =============================================================================
|
|
# OAuth / OpenID Connect (optional)
|
|
# =============================================================================
|
|
|
|
# Set to "true" to use OAuth instead of basic JMAP authentication
|
|
# OAUTH_ENABLED=true
|
|
|
|
# OAuth client ID registered with your identity provider
|
|
# OAUTH_CLIENT_ID=your-client-id
|
|
|
|
# OAuth client secret (server-side only, never exposed to the browser)
|
|
# OAUTH_CLIENT_SECRET=your-client-secret
|
|
|
|
# OpenID Connect issuer URL for discovery
|
|
# OAUTH_ISSUER_URL=https://your-idp.example.com
|
|
|
|
# =============================================================================
|
|
# Session & Security
|
|
# =============================================================================
|
|
|
|
# Secret key for encrypting "Remember me" sessions and settings sync data.
|
|
# Required for both "Remember me" and settings sync features.
|
|
# Generate with: openssl rand -base64 32
|
|
# SESSION_SECRET=your-secret-key-here
|
|
|
|
# =============================================================================
|
|
# Settings Sync
|
|
# =============================================================================
|
|
|
|
# Enable server-side settings persistence (requires SESSION_SECRET).
|
|
# When enabled, user settings are encrypted and stored on the server,
|
|
# allowing them to sync across browsers and devices.
|
|
# SETTINGS_SYNC_ENABLED=true
|
|
|
|
# Directory for storing encrypted settings files (default: ./data/settings).
|
|
# For Docker, mount a persistent volume at this path.
|
|
# SETTINGS_DATA_DIR=./data/settings
|
|
|
|
# =============================================================================
|
|
# Logging
|
|
# =============================================================================
|
|
|
|
# Log format: "text" (colored, human-readable) or "json" (structured, for log aggregation)
|
|
# LOG_FORMAT=text
|
|
|
|
# Log level: "error", "warn", "info", or "debug"
|
|
# LOG_LEVEL=info
|
|
|
|
# =============================================================================
|
|
# Login Page Customization (all optional)
|
|
# =============================================================================
|
|
|
|
# Company or organization name displayed above the version on the login page
|
|
# LOGIN_COMPANY_NAME=My Company
|
|
|
|
# URL for the imprint/legal notice link on the login page
|
|
# LOGIN_IMPRINT_URL=https://example.com/imprint
|
|
|
|
# URL for the privacy policy link on the login page
|
|
# LOGIN_PRIVACY_POLICY_URL=https://example.com/privacy
|
|
|
|
# URL for the company website link on the login page
|
|
# LOGIN_WEBSITE_URL=https://example.com
|
|
|
|
# =============================================================================
|
|
# Legacy Build-time Variables (still supported as fallback)
|
|
# =============================================================================
|
|
# These are baked into the bundle at build time. The runtime variables above
|
|
# take priority when both are set.
|
|
#
|
|
# NEXT_PUBLIC_APP_NAME=JMAP Webmail
|
|
# NEXT_PUBLIC_JMAP_SERVER_URL=https://your-jmap-server.com
|