#!/usr/bin/env bash set -euo pipefail rand_hex() { openssl rand -hex "$1" } prompt_default() { local name="$1" default="$2" val read -rp "Enter $name [$default]: " val printf -v "$name" '%s' "${val:-$default}" } prompt_autogen() { local name="$1" bytes="$2" val read -rp "Enter $name (leave blank to auto-generate): " val if [[ -z "$val" ]]; then printf -v "$name" '%s' "$(rand_hex "$bytes")" else printf -v "$name" '%s' "$val" fi } prompt_default EVIBES_PROJECT_NAME "eVibes" prompt_default EVIBES_FRONTEND_DOMAIN "evibes.com" prompt_default EVIBES_BASE_DOMAIN "evibes.com" prompt_default SENTRY_DSN "" prompt_default DEBUG "1" prompt_autogen SECRET_KEY 32 prompt_autogen JWT_SIGNING_KEY 64 prompt_default ALLOWED_HOSTS "evibes.com api.evibes.com b2b.evibes.com" prompt_default CSRF_TRUSTED_ORIGINS "https://evibes.com https://api.evibes.com https://www.evibes.com https://b2b.evibes.com" prompt_default CORS_ALLOWED_ORIGINS "$CSRF_TRUSTED_ORIGINS" prompt_default POSTGRES_DB "evibes" prompt_default POSTGRES_USER "evibes_user" prompt_autogen POSTGRES_PASSWORD 16 prompt_default DBBACKUP_SFTP_HOST "Your SFTP backup host" prompt_default DBBACKUP_SFTP_USER "The username to use to log in to that host" prompt_default DBBACKUP_SFTP_PASS "The password to use to log in to that host" prompt_autogen ELASTIC_PASSWORD 16 prompt_autogen REDIS_PASSWORD 16 prompt_default PROMETHEUS_USER "evibes" prompt_autogen PROMETHEUS_PASSWORD 16 prompt_default EMAIL_BACKEND "django.core.mail.backends.smtp.EmailBackend" prompt_default EMAIL_HOST "smtp.whatever.evibes.com" prompt_default EMAIL_PORT "465" prompt_default EMAIL_USE_TLS "0" prompt_default EMAIL_USE_SSL "1" prompt_default EMAIL_HOST_USER "your-email-user@whatever.evibes.com" prompt_default EMAIL_FROM "$EMAIL_HOST_USER" prompt_default EMAIL_HOST_PASSWORD "SUPERSECRETEMAILHOSTPASSWORD" prompt_default COMPANY_NAME "eVibes, Inc." prompt_default COMPANY_PHONE_NUMBER "+888888888888" prompt_default COMPANY_ADDRESS "The place that does not exist" prompt_default OPENAI_API_KEY "Haha, really?" prompt_default ABSTRACT_API_KEY "Haha, really? x2" prompt_default DEEPL_AUTH_KEY "Haha, really? x3" if [[ -f .env ]]; then read -rp ".env already exists and will be overwritten. Press ENTER to continue or Ctrl+C to abort. " fi cat > .env <