Claude 082cf4923a feat: Add complete production-ready bot.js to Discord Bot Admin Panel guide
ADDED: Part 4 complete implementation (7 comprehensive steps)

Complete Backend Code (by Gemini/Google AI):
- 350+ lines of production-ready Node.js/Express/Discord.js code
- 8 logical sections for easy understanding and maintenance
- Fully integrated: OAuth2, validation, atomic saves, audit logs, webhooks

Step 1: Install Dependencies
- Listed all required npm packages with explanations
- express, express-session, passport, passport-discord
- write-file-atomic, dotenv, discord.js

Step 2: Create Environment Variables File
- Complete .env template with all required variables
- Detailed instructions for obtaining each value
- DISCORD_TOKEN, CLIENT_ID, CLIENT_SECRET, GUILD_ID
- CALLBACK_URL, SESSION_SECRET, ALLOWED_ADMINS
- AUDIT_CHANNEL_ID (new for audit logging)
- NODE_ENV, PORT

Step 3: Set Environment File Permissions
- Critical security step (chmod 600, chown firefrost-bot)
- Prevents unauthorized access to secrets

Step 4: Deploy Complete bot.js (THE BIG ONE)
- 8 sections with clear separation:
  1. Imports and Environment Setup
  2. Constants and In-Memory State
  3. Helper Functions (saveConfig, roleExists)
  4. Audit Log Generator (Fire/Frost dynamic colors)
  5. Passport & Middleware Setup
  6. Authentication & UI Routes
  7. API Routes (config, logs, save)
  8. Webhook Receiver & Initialization
- Product name dictionary (for audit log embeds)
- Circular buffer webhook logging (max 50 events)
- Discord OAuth2 with whitelist
- In-memory config with atomic disk writes
- Regex + Discord API validation
- Fire/Frost dynamic embed colors (#FF6B35 / #4ECDC4)

Step 5: Set File Permissions
- Ensure firefrost-bot user owns bot.js

Step 6: Create Discord Audit Log Channel
- Instructions for creating #bot-audit-logs
- Set to private (Michael, Holly, bot only)
- Copy channel ID for .env

Step 7: Restart Bot Service
- systemctl restart commands
- Expected log output for verification

Backend Features Documented:
- Security (dedicated user, OAuth2, whitelist, sessions)
- Config management (in-memory, atomic writes, backups)
- Validation (regex + Discord API verification)
- Audit logging (Discord embeds, Fire/Frost colors, user attribution)
- Webhook logging (circular buffer, accessible via API)

Dynamic Fire/Frost Logic:
- Fire products → #FF6B35 (Fire Orange) embeds
- Frost products → #4ECDC4 (Frost Blue) embeds
- Based on product name (isFrost = name.includes('Frost'))

Expected Log Output Examples:
- Bot startup: "Bot logged in as Firefrost Subscription Manager#1234"
- Express server: "Firefrost Command Center running on port 3100"

Security Highlights:
- Runs as firefrost-bot user (NOT root)
- .env file chmod 600 (secrets protected)
- Session cookies secure in production
- Whitelist authorization (only Holly + Michael)

Status: Backend code COMPLETE and ready to deploy
Architecture credit: Gemini (Google AI) - March 23, 2026

Chronicler #40
2026-03-22 13:45:28 +00:00
2026-03-11 11:13:35 -05:00

🔥❄️ Firefrost Gaming — Operations Manual

Document ID: FFG-ROOT-001
Version: 2.0
Last Updated: February 12, 2026
Status: 🟢 CURRENT


What This Is

The complete operational repository for Firefrost Gaming — a subscription-based Minecraft server network built on the philosophy of Fire + Frost = Where Passion Meets Precision.

This repository contains infrastructure documentation, deployment guides, planning documents, branding assets, consultant archives, and the relationship context that makes Firefrost more than just servers.

Current Infrastructure

6 Servers — 2 dedicated (Dallas, Charlotte) + 4 VPS (Dallas, Charlotte, Chicago x2)
12 Game Servers — 6 on TX1 (Dallas), 6 on NC1 (Charlotte)
8 Management Services — Gitea, Uptime Kuma, MkDocs, Code-Server, Automation, NextCloud, Wiki.js (Subscribers), Wiki.js (Staff)

Repository Structure

├── docs/core/          — Critical living documents (scope, manifest, tasks)
├── docs/relationship/  — Partnership context, consultants, legacy
├── docs/deployment/    — Service deployment guides
├── docs/planning/      — Strategy, design, roadmap, ideas backlog
├── docs/reference/     — Technical reference, architecture decisions
├── docs/external/      — Provider communications, friend assistance
├── docs/sandbox/       — Brainstorming sessions (Gemini, Claude)
├── docs/archive/       — Historical session logs and completed plans
├── automation/         — Deployment automation system
├── branding/           — Logos, backgrounds, visual assets
├── photos/             — Consultant photo archive (249 photos by year)
└── web/                — Nginx configurations

Key Documents

Start here: SESSION-HANDOFF-PROTOCOL.mdDOCUMENT-INDEX.md

For current server inventory, see docs/core/infrastructure-manifest.md (FFG-CORE-002).
For project scope and roadmap, see docs/core/project-scope.md (FFG-CORE-001).

The Team

  • Michael "Frostystyle" Krause — Owner/Operator, Technical Lead (The Wizard)
  • Meg "Gingerfury" — Community Manager (The Emissary)
  • The Five Consultants — Jack, Oscar, Jasmine, Butter, Noir (They're family, not pets)

Document Standards

All documents follow FFG-STD-001 — the Firefrost Revision Control Standard. See docs/core/revision-control-standard.md.


Maintained By: The Wizard & The Chronicler
Fire + Frost + Foundation = Where Love Builds Legacy 💙🔥❄️


Revision History

Version Date Author Change Type Description
1.0 2026-02-08 Michael + Claude Initial Basic Phase 0 readme
2.0 2026-02-12 The Chronicler Rewrite Complete rewrite reflecting current state (8 services, 6 servers, 12 game servers). Updated repo structure. Applied FFG-STD-001.
Description
No description provided
Readme 1 GiB
Languages
Shell 70%
Python 16.2%
Nunjucks 8.6%
JavaScript 2.5%
HTML 2.4%
Other 0.3%