Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
185 changes: 185 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
# ====================================
# AI & Language Processing
# ====================================

# OpenAI API - Primary AI model (GPT-4)
# Get it from: https://platform.openai.com/api-keys
# Required for: AI conversations, text generation, analysis
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxxxxxx

# Anthropic Claude API (Optional)
# Get it from: https://console.anthropic.com/
# Alternative AI model for enhanced reasoning
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxx

# Google Gemini API (Optional)
# Get it from: https://makersuite.google.com/app/apikey
# Alternative AI model
GOOGLE_GEMINI_API_KEY=AIzaXXXXXXXXXXXXXXXXXXXXXXXX


# ====================================
# Voice & Communication
# ====================================

# Eleven Labs API - Text-to-Speech
# Get it from: https://elevenlabs.io/
# Required for: Voice synthesis, natural speech output
ELEVENLABS_API_KEY=xxxxxxxxxxxxxxxxxxxx

# Deepgram API - Speech-to-Text (Alternative: AssemblyAI)
# Get it from: https://console.deepgram.com/
# Required for: Voice recognition, transcription
DEEPGRAM_API_KEY=xxxxxxxxxxxxxxxxxxxx

# AssemblyAI API - Speech-to-Text (Alternative to Deepgram)
# Get it from: https://www.assemblyai.com/app/account
# Optional: Another STT option
ASSEMBLYAI_API_KEY=xxxxxxxxxxxxxxxxxxxx

# Twilio - Phone Calls & SMS
# Get it from: https://www.twilio.com/console
# Required for: Phone calls, SMS messaging
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_PHONE_NUMBER=+1234567890


# ====================================
# Calendar & Scheduling
# ====================================

# Google Calendar API - OAuth 2.0 Credentials
# Get it from: https://console.cloud.google.com/apis/credentials
# Required for: Calendar management, scheduling
GOOGLE_CALENDAR_CLIENT_ID=xxxxxxxxxxxx.apps.googleusercontent.com
GOOGLE_CALENDAR_CLIENT_SECRET=GOCSPX-xxxxxxxxxxxxxxxxxxxx
GOOGLE_CALENDAR_REDIRECT_URI=http://localhost:3000/oauth2callback

# Microsoft Graph API (Optional - for Outlook Calendar)
# Get it from: https://portal.azure.com/
# Optional: Outlook calendar integration
MICROSOFT_CLIENT_ID=xxxxxxxxxxxxxxxxxxxx
MICROSOFT_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxx
MICROSOFT_TENANT_ID=xxxxxxxxxxxxxxxxxxxx


# ====================================
# Blueprint/Drawing Tools
# ====================================

# Google Cloud Vision API - Blueprint Analysis
# Get it from: https://console.cloud.google.com/
# Required for: Analyzing CAD drawings, extracting text from blueprints
GOOGLE_CLOUD_VISION_API_KEY=AIzaXXXXXXXXXXXXXXXXXXXXXXXX

# OpenAI DALL-E 3 (uses same OpenAI key above)
# Required for: Generating diagrams and visual blueprints


# ====================================
# Cybersecurity
# ====================================

# VirusTotal API - Malware scanning
# Get it from: https://www.virustotal.com/gui/my-apikey
# Required for: File scanning, URL analysis
VIRUSTOTAL_API_KEY=xxxxxxxxxxxxxxxxxxxx

# Cloudflare API - Security & CDN
# Get it from: https://dash.cloudflare.com/profile/api-tokens
# Required for: DNS security, DDoS protection
CLOUDFLARE_API_KEY=xxxxxxxxxxxxxxxxxxxx
CLOUDFLARE_ZONE_ID=xxxxxxxxxxxxxxxxxxxx

# Auth0 - Authentication (Alternative: Supabase)
# Get it from: https://manage.auth0.com/
# Required for: User authentication
AUTH0_DOMAIN=your-domain.auth0.com
AUTH0_CLIENT_ID=xxxxxxxxxxxxxxxxxxxx
AUTH0_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxx

# Supabase - Authentication & Database (Alternative to Auth0)
# Get it from: https://app.supabase.com/
# Optional: Alternative auth provider
SUPABASE_URL=https://xxxxxxxxxxxx.supabase.co
SUPABASE_ANON_KEY=xxxxxxxxxxxxxxxxxxxx
SUPABASE_SERVICE_KEY=xxxxxxxxxxxxxxxxxxxx

# Have I Been Pwned API
# Get it from: https://haveibeenpwned.com/API/Key
# Optional: Check for compromised passwords
HIBP_API_KEY=xxxxxxxxxxxxxxxxxxxx


# ====================================
# Knowledge & Search
# ====================================

# Perplexity API - AI-powered search
# Get it from: https://www.perplexity.ai/settings/api
# Required for: Real-time information retrieval
PERPLEXITY_API_KEY=pplx-xxxxxxxxxxxxxxxxxxxx

# Bing Search API (Alternative to Perplexity)
# Get it from: https://portal.azure.com/
# Optional: Web search capabilities
BING_SEARCH_API_KEY=xxxxxxxxxxxxxxxxxxxx

# Pinecone - Vector Database
# Get it from: https://www.pinecone.io/
# Required for: Knowledge base storage and retrieval
PINECONE_API_KEY=xxxxxxxxxxxxxxxxxxxx
PINECONE_ENVIRONMENT=us-east-1-aws
PINECONE_INDEX_NAME=smart-assistant

# Weaviate - Vector Database (Alternative to Pinecone)
# Get it from: https://console.weaviate.cloud/
# Optional: Alternative vector database
WEAVIATE_URL=https://xxxxxxxxxxxx.weaviate.network
WEAVIATE_API_KEY=xxxxxxxxxxxxxxxxxxxx

# Wolfram Alpha API - Computational knowledge
# Get it from: https://products.wolframalpha.com/api/
# Optional: Advanced calculations and data
WOLFRAM_ALPHA_APP_ID=XXXXXX-XXXXXXXXXX


# ====================================
# Database & Storage
# ====================================

# MongoDB Atlas - Database
# Get it from: https://www.mongodb.com/cloud/atlas
# Required for: Data persistence
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/database

# AWS S3 - File Storage
# Get it from: https://console.aws.amazon.com/
# Required for: File uploads, media storage
AWS_ACCESS_KEY_ID=AKIAXXXXXXXXXXXXXXXX
AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxx
AWS_REGION=us-east-1
AWS_S3_BUCKET=smart-assistant-files

# Cloudinary - Media Storage (Alternative to S3)
# Get it from: https://cloudinary.com/console
# Optional: Image/video hosting
CLOUDINARY_CLOUD_NAME=xxxxxxxxxxxxxxxxxxxx
CLOUDINARY_API_KEY=xxxxxxxxxxxxxxxxxxxx
CLOUDINARY_API_SECRET=xxxxxxxxxxxxxxxxxxxx


# ====================================
# Application Configuration
# ====================================

# Application Settings
NODE_ENV=development
PORT=3000
APP_URL=http://localhost:3000

# Security Settings
JWT_SECRET=your-random-secret-key-change-this-in-production
SESSION_SECRET=another-random-secret-key-change-this
ENCRYPTION_KEY=32-character-encryption-key-here
81 changes: 81 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Environment variables - NEVER commit these!
.env
.env.local
.env.*.local

# Dependencies
node_modules/
package-lock.json
yarn.lock
pnpm-lock.yaml

# Logs
logs/
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage/
*.lcov

# nyc test coverage
.nyc_output

# Build output
dist/
build/
.next/
out/

# Temporary files
tmp/
temp/
*.tmp
*.temp

# IDE files
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# OS files
Thumbs.db

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Diagnostic reports
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# User-specific credential files (encrypted storage)
credentials/
keys/
secrets/

# Google Calendar credentials
token.json
credentials.json

# AWS credentials
.aws/
Loading