Codebase structure
Routes (13 files)
inbox.py— Email list with paginationthread.py— Thread/message detail viewcompose.py— Email composition (new/reply/forward)search.py— Keyword + semantic searchcalendar.py— Week view + event creationsettings.py— Read-only config displaybulk.py— Bulk email operationsactions.py— Single email actionsdashboard.py— Priority inbox + statschat.py— AI chat interfaceanalysis.py— Email analysis sidebarnotifications.py— Notification endpoints__init__.py— Router registration
Templates (22 files)
- Core:
base.html,inbox.html,thread.html,search.html,compose.html,calendar.html,dashboard.html,settings.html,chat.html - Auth:
auth/login.html - Partials:
email_list,email_widget,stats_badges,analysis_sidebar,availability_widget,saved_searches,search_suggestions,settings_*
Static JS (1 file)
app.js— Minimal (~29 lines): Alpine.js collapse directive + HTMX loading state