How hemen-dev/email-categorizer works
Email Categorizer turns volunteer-application email text into keyword-based categories, then offers statistics, CSV reporting, and optional folder organization. Users can run it through a command-line interface or a Flask web interface; the sampled web route directly invokes the core processing, statistics, reporting, and organization functions. The core module excerpt is incomplete, so internal CLI wiring and some batch-discovery details are not expanded beyond documented capabilities.
Main entry points: web_gui.py Flask web interface · email_categorizer.py Batch processing · sample_emails Email text files
Components 13
User interfaces
- Command-line interface
src/email_categorizer.py - Flask web interface
web_gui.py
Email categorization
- Batch processing
src/email_categorizer.py - Email parsing
src/email_categorizer.py - Keyword categories
src/email_categorizer.py
Reports and organization
- Statistics generation
src/email_categorizer.py - CSV report
src/email_categorizer.py - Folder organization
src/email_categorizer.py
Other components
- CLI user
- Web user
- Email text files
data/sample_emails - CSV output
- Categorized copies
Connections 13
- CLI user → Command-line interface: runs
- Web user → Flask web interface: submits
- Email text files → Flask web interface: selects directory
- Command-line interface → Batch processing: processes batch
- Batch processing → Email text files: reads files
- Batch processing → Email parsing: processes each
- Email parsing → Keyword categories: matches keywords
- Flask web interface → Email parsing: processes each
- Flask web interface → Statistics generation: generates
- Flask web interface → CSV report: requests report
- Flask web interface → Folder organization: requests organization
- CSV report → CSV output: writes
- Folder organization → Categorized copies: copies into folders