# Quick Reference - TagneticAI Email Client\n\n## 🚀 Get Started in 3 Steps\n\n### Step 1: Configure\n```bash\ncp .env.example .env.local\n# Edit .env.local with your mail credentials\n```\n\n### Step 2: Develop Locally\n```bash\nnpm install\nnpm run dev\n# Open http://localhost:3000\n```\n\n### Step 3: Deploy with Docker\n```bash\ndocker-compose up -d\n# Application is now running on http://localhost:3000\n```\n\n---\n\n## 📁 File Reference\n\n| File | Purpose |\n|------|----------|\n| `app/page.tsx` | Main application layout |\n| `app/api/emails/route.ts` | Fetch emails via IMAP |\n| `app/api/send/route.ts` | Send emails via SMTP |\n| `components/Sidebar.tsx` | Navigation sidebar |\n| `components/EmailList.tsx` | Email list display |\n| `components/ReadingPane.tsx` | Email reading interface |\n| `components/ReplyBox.tsx` | Reply composition |\n| `.env.example` | Environment template |\n| `Dockerfile` | Production Docker build |\n| `docker-compose.yml` | Docker orchestration |\n| `README.md` | Full documentation |\n| `DEPLOYMENT.md` | Deployment guide |\n\n---\n\n## 🔧 Environment Variables\n\n```env\n# Required\nEMAIL_HOST=mail.yourdomain.com\nEMAIL_USER=your-email@yourdomain.com\nEMAIL_PASSWORD=your-password\n\n# Optional (defaults shown)\nEMAIL_IMAP_PORT=993\nEMAIL_SMTP_PORT=465\nEMAIL_FROM_NAME=TagneticAI\nNEXT_PUBLIC_API_URL=http://localhost:3000\nNODE_ENV=production\nPORT=3000\n```\n\n---\n\n## 📊 API Endpoints\n\n### GET /api/emails\nFetch 20 most recent emails from INBOX.\n\n**Response**: Array of email objects with full body, HTML, headers\n\n### POST /api/send\nSend an email.\n\n**Body**:\n```json\n{\n  \"to\": \"recipient@example.com\",\n  \"subject\": \"Email subject\",\n  \"text\": \"Plain text body\",\n  \"html\": \"<p>HTML body (optional)</p>\",\n  \"cc\": \"optional@example.com\",\n  \"bcc\": \"optional@example.com\"\n}\n```\n\n---\n\n## 🎨 UI Components\n\n| Component | Purpose |\n|-----------|----------|\n| **Sidebar** | Folders (Inbox, Sent, Drafts), Tags, Refresh, Dark/Light mode |\n| **EmailList** | Scrollable email previews with sender, subject, snippet, date |\n| **ReadingPane** | Full email display, reply/forward/delete actions, header details |\n| **ReplyBox** | Compose and send replies directly from email |\n\n---\n\n## 🐳 Docker Commands\n\n```bash\n# Build image\ndocker-compose build\n\n# Start container\ndocker-compose up -d\n\n# View logs\ndocker-compose logs -f\n\n# Stop container\ndocker-compose down\n\n# Check status\ndocker-compose ps\n```\n\n---\n\n## 🚨 Troubleshooting\n\n**Can't connect to mail server?**\n```bash\ntelnet mail.yourdomain.com 993\ntelnet mail.yourdomain.com 465\n```\n\n**Port 3000 in use?**\n```bash\nsudo lsof -i :3000\nsudo kill -9 <PID>\n```\n\n**Check container logs**\n```bash\ndocker-compose logs -f --tail 100\n```\n\n---\n\n## 📦 Dependencies\n\n- Next.js 14 (App Router)\n- React 18\n- TypeScript 5\n- Tailwind CSS 3\n- imapflow (IMAP)\n- nodemailer (SMTP)\n- mailparser (Email parsing)\n- lucide-react (Icons)\n- date-fns (Dates)\n\n---\n\n## 🔒 Security\n\n✅ TLS/STARTTLS encryption for mail\n✅ Non-root Docker user\n✅ Environment variable validation\n✅ Email format validation\n✅ No hardcoded credentials\n✅ HTTPS ready with reverse proxy\n\n---\n\n## 💡 Development\n\n```bash\n# Type checking\nnpm run type-check\n\n# Linting\nnpm run lint\n\n# Production build\nnpm run build\nnpm start\n```\n\n---\n\n## 🌐 Deployment\n\n**Local**: `npm run dev`\n**Docker**: `docker-compose up -d`\n**Cloud**: See DEPLOYMENT.md for guides on:\n- DigitalOcean\n- AWS EC2\n- Heroku\n- Railway.app\n- Custom VPS with Nginx\n\n---\n\n## 📝 Need Help?\n\n- **Setup**: Read README.md\n- **Deployment**: Read DEPLOYMENT.md\n- **Implementation Details**: Read IMPLEMENTATION_SUMMARY.md\n- **Mail Server Issues**: Check mail server documentation\n- **Docker Issues**: `docker-compose logs`\n\n---\n\n**Happy emailing! 📧**\n"