inBOXER - Email classification and organization tool using IMAP and AI
Find a file
cclohmar 01a58156a1 Consolidate all secrets into config.yaml — remove .env entirely
All configuration (including secrets) now lives in a single file:
bin/config.yaml. The separate .env file has been eliminated.

Changes:
- config.go: Added SMTPSettings struct + AI.APIKey to Config; removed
  godotenv import, Environment struct, and all os.Getenv() calls
- config.yaml: Added smtp section (host/port/username/password) and
  ai.api_key field with placeholder values
- main.go: Reads SMTP and API key from cfg instead of env
- smtp.go: Changed Port field from string to int
- otp_test.go: Updated Port values to int
- .env.example: Deleted (all config is in config.yaml)
- .gitignore: Removed .env.example; kept .env for safety
- go.mod/go.sum: Removed github.com/joho/godotenv dependency
- install.sh: No longer creates .env or uses EnvironmentFile;
  warns about placeholder values in config.yaml instead
2026-04-23 20:06:16 +00:00
bin Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
docs Phase 4: Polish, settings fix, 7-way AI classification & empty-inbox guarantee (Version: 2026-04.5) 2026-04-23 18:35:30 +00:00
src Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
.gitignore Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
AGENTS.md Phase 4: Polish, settings fix, 7-way AI classification & empty-inbox guarantee (Version: 2026-04.5) 2026-04-23 18:35:30 +00:00
go.mod Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
go.sum Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
install.sh Consolidate all secrets into config.yaml — remove .env entirely 2026-04-23 20:06:16 +00:00
Makefile Phase 1: Foundation, OTP Auth & Mobile Frontend (Version: 2026-04.1) 2026-04-23 08:26:32 +00:00
PROJECT_PLAN.md Phase 1: Foundation, OTP Auth & Mobile Frontend (Version: 2026-04.1) 2026-04-23 08:26:32 +00:00
README.md Phase 1: Foundation, OTP Auth & Mobile Frontend (Version: 2026-04.1) 2026-04-23 08:26:32 +00:00

inBOXER

Email classification and organization tool using IMAP and AI.

Overview

inBOXER is a Go application that:

  • Connects to your IMAP email account
  • Uses DeepSeek AI to classify incoming emails
  • Automatically moves emails to appropriate folders (Important, eCommerce, Other, Spam)
  • Provides a web interface for configuration and monitoring

Features

  • Email + OTP Authentication: Secure login without passwords
  • AI-Powered Classification: Uses DeepSeek LLM for intelligent email sorting
  • Mobile-First Web Interface: Responsive design for all devices
  • Modular Architecture: Clean separation of concerns (auth, IMAP, AI, database, worker)
  • Test Mode: Preview AI decisions without moving emails

Quick Start

  1. Clone the repository
  2. Configure .env with your API keys and credentials
  3. Run make build to compile the binary
  4. Run make run to start the application
  5. Access the web interface at http://localhost:8080

Architecture

See PROJECT_PLAN.md for detailed architecture and development phases.

License

See docs/LICENSE.md for license information.