Framework support
Dotvault for Laravel
A proper .env editor for Laravel apps.
Laravel projects live and die by their .env file. Database credentials, mail drivers, queue connections and a dozen third-party API keys all plug in through the same file, and it is the one file you cannot commit. Dotvault gives you a visual editor that knows Laravel's conventions, reads your composer.json to work out which packages you have pulled in, and tells you when something looks off.
What you get
- →Flags a missing APP_KEY before your app does, and knows the rest of the core set: APP_ENV, APP_URL, the database block, the queue and mail drivers.
- →Keeps .env.example in step. When you add a key, Dotvault offers to sync it across, keys only or keys and values, one key at a time if you like.
- →Snapshot history on every save, so the value you had before the deploy is still there. Encrypted on disk, and never sent anywhere.
- →Automatic detection from composer.json: Laravel, Cashier, Sanctum, Scout, Nova, Horizon, Telescope, Reverb and more, each with the variables it expects.
- →Warnings for the classics: an APP_URL that is not a URL, an APP_DEBUG holding something that is not true or false, a secret-shaped value sitting in a git-tracked file.
- →Warns when a VITE_ value can only be a secret. Laravel compiles those into the front-end bundle, so a secret key there is readable by anyone who loads the page, gitignored file or not.
- →Works alongside Laravel Vapor, Forge, and plain VPS deployments. No vendor lock-in.
- →Opens Laravel encrypted env files natively (AES-256-CBC and AES-128-CBC, Standard and Readable formats). Unlock once and edit in place, with no decrypt and re-encrypt cycle.
- →Encryption keys are scoped to the file path and stored via safeStorage, protected by your macOS Keychain. They survive file renames and repo re-adds.
Known environment variables
Dotvault recognises these variables when you open a Laravel project and surfaces helpful descriptions and warnings in the editor. Laravel is detected via laravel/framework in composer.json.
APP_NAMEApplication name
APP_ENVApplication environment (local/production)
APP_KEYRequiredApplication encryption key
APP_DEBUGDebug mode toggle
APP_URLApplication base URL
APP_TIMEZONEApplication timezone
APP_LOCALEApplication locale
APP_FALLBACK_LOCALEFallback locale when translation is missing
APP_FAKER_LOCALEFaker locale for database seeding
APP_MAINTENANCE_DRIVERMaintenance mode driver (file/cache)
APP_MAINTENANCE_STORECache store for maintenance mode
BCRYPT_ROUNDSBcrypt hashing rounds
LOG_CHANNELLogging channel (stack/single/daily)
LOG_STACKChannels for the stack log driver
LOG_DEPRECATIONS_CHANNELChannel for deprecation warnings
LOG_LEVELMinimum log level
PAPERTRAIL_URLPapertrail log destination URL
PAPERTRAIL_PORTPapertrail log destination port
DB_CONNECTIONDatabase driver (mysql/pgsql/sqlite)
DB_HOSTDatabase host
DB_PORTDatabase port
DB_DATABASEDatabase name
DB_USERNAMEDatabase username
DB_PASSWORDDatabase password
DB_COLLATIONDatabase collation
CACHE_STORECache driver (file/redis/memcached)
CACHE_PREFIXCache key prefix
MEMCACHED_HOSTMemcached host
SESSION_DRIVERSession driver (file/cookie/database/redis)
SESSION_LIFETIMESession lifetime in minutes
SESSION_ENCRYPTEncrypt session data
SESSION_PATHSession cookie path
SESSION_DOMAINSession cookie domain
SESSION_SECURE_COOKIEHTTPS-only session cookies
SESSION_COOKIESession cookie name
SESSION_CONNECTIONDatabase connection for session driver
SESSION_STORECache store for session driver
QUEUE_CONNECTIONQueue driver (sync/database/redis/sqs)
SQS_PREFIXAmazon SQS queue URL prefix
MAIL_MAILERMail driver (smtp/mailgun/ses)
MAIL_SCHEMEMail transport scheme (smtp/smtps)
MAIL_HOSTSMTP host
MAIL_PORTSMTP port
MAIL_USERNAMESMTP username
MAIL_PASSWORDSMTP password
MAIL_ENCRYPTIONSMTP encryption (tls/ssl)
MAIL_FROM_ADDRESSDefault from address
MAIL_FROM_NAMEDefault from name
MAIL_EHLO_DOMAINSMTP EHLO domain
REDIS_CLIENTRedis client (phpredis/predis)
REDIS_HOSTRedis host
REDIS_PASSWORDRedis password
REDIS_PORTRedis port
REDIS_URLRedis connection URL
BROADCAST_CONNECTIONBroadcast driver
BROADCAST_DRIVERBroadcast driver (legacy, pre-Laravel 11)
FILESYSTEM_DISKDefault filesystem disk
AWS_ACCESS_KEY_IDAWS access key (for S3/SES/SQS)
AWS_SECRET_ACCESS_KEYAWS secret key
AWS_DEFAULT_REGIONAWS region
AWS_BUCKETS3 bucket name
AWS_ENDPOINTCustom AWS endpoint URL
AWS_USE_PATH_STYLE_ENDPOINTUse path-style S3 endpoints
AWS_URLCustom URL for S3 assets
PUSHER_APP_IDPusher app ID
PUSHER_APP_KEYPusher app key
PUSHER_APP_SECRETPusher app secret
PUSHER_APP_CLUSTERPusher cluster
PUSHER_HOSTPusher host (for self-hosted)
PUSHER_PORTPusher port
PUSHER_SCHEMEPusher scheme (http/https)
VITE_APP_NAMEClient-exposed variable (Vite/Laravel)
Official Laravel docs: laravel.com/docs