.env.example
APP_2FA_SECRET = yi83bfbwbbiwwewnklw
APP_2FA_SIMPLE = true
APP_NAME = Cypht
DEBUG_LOG = false
DEFAULT_SMTP_NO_AUTH = false
DEFAULT_SMTP_PORT = 3045
// ...
App Config

Configure your Cypht application's core settings. Customize the basic behavior, display preferences, and essential features for an optimal user experience.

General Settings
Name of your application
Enable debug logging for troubleshooting
Comma-separated list of admin user emails
Default language code (e.g., en, fr, de)
Force mobile UI for all devices
Enable single server mode
Comma-separated list of enabled modules
Enable fancy login page design
API login key for authentication
Path to CA certificates for Windows (get from https://curl.se/ca/cacert.pem)
Session
Choose how to handle user sessions
Custom session class name (if using custom session type)
Enable session caching
Allow extended session lifetime
Lifetime for long sessions in days
Authentication
Select the authentication method for your application
Custom authentication class name (if using custom auth type)
LDAP server hostname or IP address
LDAP server port (default: 389)
Enable secure connection to LDAP server
LDAP base distinguished name for authentication
LDAP attribute for user identification
IMAP authentication server name
IMAP server hostname or IP address
IMAP server port (default: 993)
Enable secure connection to IMAP server
Sieve configuration host for IMAP
Enable TLS for Sieve connections
User
Choose how to store user configuration data
Directory path for storing user settings (file mode only)
Directory path for storing email attachments
Default domain for email addresses
Automatically create user profiles on first login
Default name for SMTP server
Default SMTP server hostname
Default SMTP server port
Enable TLS for default SMTP
Disable authentication for default SMTP
Security
Disable origin check for enhanced security (recommended)
Disable IP address checking
Disable browser fingerprinting
Disable emptying PHP superglobal arrays
Disable open_basedir PHP restriction
Disable custom PHP INI settings
Allow loading images from external sources
Domain for application cookies
Path for application cookies
Encrypt all AJAX requests for enhanced security
Encrypt data stored in browser local storage
Cache
Custom cache class name (leave empty for default)
Enable Redis caching
Redis server hostname or IP
Redis server port
Redis database index
Redis authentication password
Redis socket path (if using Unix socket)
Enable Memcached caching
Memcached server hostname or IP
Memcached server port
Enable Memcached authentication
Memcached authentication username
Memcached authentication password
User Interface
Enable JS compression for enhanced security (recommended)
Enable CSS compression for enhanced security (recommended)
Comma-separated list of JS dependencies to exclude
Custom imports for web workers
Redirect
Redirect after login
Database Config

Configure your Cypht application's database settings. Set up the database connection parameters to ensure smooth data management and retrieval.

Database
Choose how to connect to the database
Database server hostname or IP address
Database server port number
Name of the database to connect to
Database management system
Username for database authentication
Password for database authentication
2FA Config

Configure your Cypht application's two-factor authentication settings. Set up the 2FA parameters to enhance security and protect your application from unauthorized access.

2FA
Secret key for two-factor authentication (32 characters)
Enable simplified two-factor authentication mode
Carddav Config

Configure your Cypht application's carddav settings. Set up the carddav parameters to enhance security and protect your application from unauthorized access.

Carddav
CardDAV server hostname or IP address
Dynamic Login Config

Configure your Cypht application's dynamic login settings. Set up the dynamic login parameters to enable flexible and secure user authentication.

Dynamic Login
Enable dynamic host configuration
Enable dynamic host subdomain support
Enable dynamic user configuration
Enable dynamic SMTP subdomain support
Enable dynamic mail subdomain support
Github Config

Configure your Cypht application's GitHub settings. Set up the GitHub parameters to enable integration with GitHub for authentication and other features.

Github
GitHub OAuth application client ID
GitHub OAuth application client secret
OAuth callback URL for GitHub authentication
GitHub OAuth authorization endpoint
GitHub OAuth token exchange endpoint
LDAP Config

Configure your Cypht application's LDAP settings. Set up the LDAP parameters to enable integration with LDAP for authentication and other features.

LDAP
LDAP server hostname or IP address
LDAP server port (default: 389)
Enable secure connection to LDAP server
LDAP base distinguished name for searches
LDAP attribute to search for usernames
Enable LDAP authentication for users
LDAP bind username for authentication
LDAP bind password for authentication
LDAP object class for user searches
LDAP UID attribute name
Enable read/write access to LDAP directory
OAuth2 Config

Configure your Cypht application's OAuth2 settings. Set up the OAuth2 parameters to enable integration with OAuth2 for authentication and other features.

Gmail
Gmail OAuth application client ID
Gmail OAuth application client secret
OAuth callback URL for Gmail authentication
Gmail OAuth authorization endpoint
Gmail OAuth token exchange endpoint
Gmail OAuth refresh token endpoint
Outlook
Outlook OAuth application client ID
Outlook OAuth application client secret
OAuth callback URL for Outlook authentication
Outlook OAuth authorization endpoint
Outlook OAuth token exchange endpoint
Outlook OAuth refresh token endpoint
Office 365
Office 365 OAuth application client ID
Office 365 OAuth application client secret
OAuth callback URL for Office 365 authentication
Office 365 OAuth authorization endpoint
Office 365 OAuth token exchange endpoint
Office 365 OAuth refresh token endpoint
Recaptcha Config

Configure your Cypht application's reCAPTCHA settings. Set up the reCAPTCHA parameters to enable integration with reCAPTCHA for authentication and other features.

Recaptcha
reCAPTCHA secret key for server-side verification
reCAPTCHA site key for client-side integration
Wordpress Config

Configure your Cypht application's WordPress settings. Set up the WordPress parameters to enable integration with WordPress for authentication and other features.

Wordpress
WordPress OAuth application client ID
WordPress OAuth application client secret
OAuth callback URL for WordPress authentication
Notice
Please note that neither allow_session_cache & cache_class are configurable here, as this is not recommended and intended for advanced use only. Check app.php for more info.
Preview

Review your generated .env file before downloading or copying to clipboard

ADMIN_USERS=

ALLOW_EXTERNAL_IMAGE_SOURCES=true
ALLOW_LONG_SESSION=false
ALLOW_SESSION_CACHE=false

ALWAYS_MOBILE_UI=false

APP_2FA_SECRET=
APP_2FA_SIMPLE=false
APP_NAME=Cypht

ATTACHMENT_DIR=/var/lib/hm3/attachments

AUTH_CLASS=
AUTH_TYPE=DB

AUTO_CREATE_PROFILE=false

CACHE_CLASS=false

CARD_DAV_SERVER=http://localhost:5232

COOKIE_DOMAIN=
COOKIE_PATH=

CSS_COMPRESS=false

CYPHT_MODULES=core,contacts,local_contacts,feeds,imap,smtp,account,idle_timer,calendar,themes,nux,developer,history,saved_searches,advanced_search,highlights,profiles,inline_message,imap_folders,keyboard_shortcuts,tags

DB_CONNECTION_TYPE=host
DB_DRIVER=mysql
DB_HOST=127.0.0.1
DB_NAME=cypht_db
DB_PASS=
DB_PORT=3306
DB_SOCKET=/var/lib/mysqld/mysqld.sock
DB_USER=root

DEBUG_LOG=false

DEFAULT_EMAIL_DOMAIN=
DEFAULT_LANGUAGE=en
DEFAULT_SETTING_ALL_EMAIL_PER_SOURCE=20
DEFAULT_SETTING_ALL_EMAIL_SINCE=-1 week
DEFAULT_SETTING_ALL_PER_SOURCE=20
DEFAULT_SETTING_ALL_SINCE=-1 week
DEFAULT_SETTING_DISABLE_DELETE_PROMPT=false
DEFAULT_SETTING_DRAFT_PER_SOURCE=20
DEFAULT_SETTING_DRAFT_SINCE=-1 week
DEFAULT_SETTING_ENABLE_COLLECT_ADDRESS_ON_SEND=false
DEFAULT_SETTING_ENABLE_KEYBOARD_SHORTCUTS=false
DEFAULT_SETTING_ENABLE_SIEVE_FILTER=false
DEFAULT_SETTING_ENABLE_SNOOZE=false
DEFAULT_SETTING_FEED_LIMIT=20
DEFAULT_SETTING_FEED_SINCE=-1 week
DEFAULT_SETTING_FLAGGED_PER_SOURCE=20
DEFAULT_SETTING_FLAGGED_SINCE=-1 week
DEFAULT_SETTING_GITHUB_LIMIT=20
DEFAULT_SETTING_GITHUB_SINCE=-1 week
DEFAULT_SETTING_IMAP_PER_PAGE=20
DEFAULT_SETTING_INLINE_MESSAGE=false
DEFAULT_SETTING_INLINE_MESSAGE_STYLE=right
DEFAULT_SETTING_JUNK_PER_SOURCE=20
DEFAULT_SETTING_JUNK_SINCE=-1 week
DEFAULT_SETTING_LANGUAGE=en
DEFAULT_SETTING_LIST_STYLE=email_style
DEFAULT_SETTING_MSG_PART_ICONS=true
DEFAULT_SETTING_NO_FOLDER_ICONS=false
DEFAULT_SETTING_NO_PASSWORD_SAVE=false
DEFAULT_SETTING_PAGINATE_LINKS=true
DEFAULT_SETTING_REVIEW_SENT_EMAIL=true
DEFAULT_SETTING_SEARCH_SINCE=-1 week
DEFAULT_SETTING_SENT_PER_SOURCE=20
DEFAULT_SETTING_SENT_SINCE=-1 week
DEFAULT_SETTING_SHOW_LIST_ICONS=true
DEFAULT_SETTING_SIMPLE_MSG_PARTS=false
DEFAULT_SETTING_SMTP_AUTO_BCC=false
DEFAULT_SETTING_SMTP_COMPOSE_TYPE=
DEFAULT_SETTING_SNOOZED_PER_SOURCE=20
DEFAULT_SETTING_SNOOZED_SINCE=-1 week
DEFAULT_SETTING_START_PAGE=none
DEFAULT_SETTING_TAGS_PER_SOURCE=20
DEFAULT_SETTING_TAGS_SINCE=-1 week
DEFAULT_SETTING_TEXT_ONLY=false
DEFAULT_SETTING_THEME=default
DEFAULT_SETTING_TIMEZONE=UTC
DEFAULT_SETTING_TRASH_PER_SOURCE=20
DEFAULT_SETTING_TRASH_SINCE=-1 week
DEFAULT_SETTING_UNREAD_EXCLUDE_FEEDS=false
DEFAULT_SETTING_UNREAD_EXCLUDE_GITHUB=false
DEFAULT_SETTING_UNREAD_EXCLUDE_WORDPRESS=false
DEFAULT_SETTING_UNREAD_PER_SOURCE=20
DEFAULT_SETTING_UNREAD_SINCE=-1 week
DEFAULT_SETTING_WORDPRESS_SINCE=-1 week

DEFAULT_SMTP_NAME=
DEFAULT_SMTP_NO_AUTH=false
DEFAULT_SMTP_PORT=
DEFAULT_SMTP_SERVER=
DEFAULT_SMTP_TLS=false

DISABLE_EMPTY_SUPERGLOBALS=false
DISABLE_FINGERPRINT=false
DISABLE_INI_SETTINGS=false
DISABLE_IP_CHECK=false
DISABLE_OPEN_BASE_DIR=false
DISABLE_ORIGIN_CHECK=false

DYNAMIC_HOST=true
DYNAMIC_HOST_SUBDOMAIN=false
DYNAMIC_MAIL_SUBDOMAIN=false
DYNAMIC_SMTP_SUBDOMAIN=false
DYNAMIC_USER=false

ENABLE_MEMCACHED=true
ENABLE_REDIS=true

ENCRYPT_AJAX_REQUESTS=false
ENCRYPT_LOCAL_STORAGE=false

FANCY_LOGIN=false

GITHUB_AUTH_URL=https://github.com/login/oauth/authorize
GITHUB_CLIENT_ID=false
GITHUB_CLIENT_SECRET=
GITHUB_REDIRECT_URI=http://localhost/?page=home
GITHUB_TOKEN_URL=https://github.com/login/oauth/access_token

GMAIL_AUTH_URI=https://accounts.google.com/o/oauth2/auth
GMAIL_CLIENT_ID=
GMAIL_CLIENT_SECRET=
GMAIL_CLIENT_URI=http://localhost/?page=home
GMAIL_REFRESH_URI=https://www.googleapis.com/oauth2/v3/token
GMAIL_TOKEN_URI=https://www.googleapis.com/oauth2/v3/token

IMAP_AUTH_NAME=Gandi
IMAP_AUTH_PORT=993
IMAP_AUTH_SERVER=mail.gandi.net
IMAP_AUTH_SIEVE_CONF_HOST=false
IMAP_AUTH_SIEVE_TLS_MODE=true
IMAP_AUTH_TLS=true

JS_COMPRESS=false
JS_EXCLUDE_DEPS=false

LDAP_AUTH=false
LDAP_AUTH_BASE_DN=example,dc=com
LDAP_AUTH_PORT=389
LDAP_AUTH_SERVER=localhost
LDAP_AUTH_TLS=false
LDAP_AUTH_UID_ATTR=uid
LDAP_BASE_DN=dc=example,dc=com
LDAP_ENABLE_TLS=false
LDAP_OBJECT_CLASS=top,person,organizationalperson,inetorgperson
LDAP_PASS=
LDAP_PORT=389
LDAP_READ_WRITE=true
LDAP_SEARCH_TERM=objectclass=inetOrgPerson
LDAP_SERVER=localhost
LDAP_UID_ATTR=uid
LDAP_USER=

LONG_SESSION_LIFETIME=30

MEMCACHED_AUTH=false
MEMCACHED_PASS=
MEMCACHED_PORT=11211
MEMCACHED_SERVER=127.0.0.1
MEMCACHED_USER=

OFFICE365_AUTH_URI=https://login.live.com/oauth20_authorize.srf
OFFICE365_CLIENT_ID=
OFFICE365_CLIENT_SECRET=
OFFICE365_CLIENT_URI=http://localhost/?page=home
OFFICE365_REFRESH_URI=https://login.live.com/oauth20_token.srf
OFFICE365_TOKEN_URI=https://login.live.com/oauth20_token.srf

OUTLOOK_AUTH_URI=https://login.live.com/oauth20_authorize.srf
OUTLOOK_CLIENT_ID=
OUTLOOK_CLIENT_SECRET=
OUTLOOK_CLIENT_URI=http://localhost/?page=home
OUTLOOK_REFRESH_URI=https://login.live.com/oauth20_token.srf
OUTLOOK_TOKEN_URI=https://login.live.com/oauth20_token.srf

RECAPTCHA_SECRET=
RECAPTCHA_SITE_KEY=

REDIRECT_AFTER_LOGIN=

REDIS_INDEX=1
REDIS_PASS=
REDIS_PORT=6379
REDIS_SERVER=127.0.0.1
REDIS_SOCKET=/var/run/redis/redis-server.sock

SESSION_CLASS=
SESSION_TYPE=PHP

SINGLE_SERVER_MODE=false

USER_CONFIG_TYPE=file
USER_SETTINGS_DIR=/var/lib/hm3/users

WORDPRESS_CLIENT_ID=
WORDPRESS_CLIENT_SECRET=
WORDPRESS_CLIENT_URI=