diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..4066c02 --- /dev/null +++ b/.env.example @@ -0,0 +1,42 @@ +# Copy this file to .env for local development. Do not commit your real .env. +# Heroku: set these in Config Vars; dotenv is a no-op in production. + +# Discord bot +TOKEN= +MODE=Normal + +# Caching and sweepers +CACHE_MESSAGES_LIMIT=50 +CACHE_MEMBERS_LIMIT=100 +SWEEP_MESSAGES_INTERVAL_SECONDS=300 +SWEEP_MESSAGES_LIFETIME_SECONDS=900 + +# Logging and diagnostics +LOG_LEVEL=info +PRISMA_LOG_QUERIES=0 +MEMORY_LOG_INTERVAL_SECONDS=0 +ENABLE_MEMORY_OPTIMIZER=false + +# Redis connection +REDIS_URL= +REDIS_PASS= + +# Appwrite (for reminders) +APPWRITE_ENDPOINT= +APPWRITE_PROJECT_ID= +APPWRITE_API_KEY= + +# Reminders +REMINDERS_POLL_INTERVAL_SECONDS=30 + +# Google AI / Gemini +GOOGLE_AI_API_KEY= +GEMINI_API_KEY= +GENAI_IMAGE_MODEL= + +# Slash command registration context +# Your Discord Application ID +CLIENT= +# Test guild ID (for per-guild command registration) +guildTest= + diff --git a/package-lock.json b/package-lock.json index 802c44c..6967330 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "chrono-node": "2.9.0", "discord-api-types": "0.38.26", "discord.js": "15.0.0-dev.1759363313-f510b5ffa", + "dotenv": "16.6.1", "node-appwrite": "19.1.0", "pino": "9.13.0", "prisma": "6.16.2", diff --git a/package.json b/package.json index 2c08830..438139c 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ "chrono-node": "2.9.0", "discord-api-types": "0.38.26", "discord.js": "15.0.0-dev.1759363313-f510b5ffa", + "dotenv": "16.6.1", "node-appwrite": "19.1.0", "pino": "9.13.0", "prisma": "6.16.2", diff --git a/src/main.ts b/src/main.ts index 781a0bf..3cf6e63 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,3 +1,5 @@ +import "dotenv/config"; + import Amayo from "./core/client"; import { loadCommands } from "./core/loaders/loader"; import { loadEvents } from "./core/loaders/loaderEvents";