32 lines
1.1 KiB
Markdown
32 lines
1.1 KiB
Markdown
# Daemon
|
|
|
|
The panorama daemon runs locally and serves as the primary controller of all of
|
|
panorama's functions. Since it needs to be ready to listen for clients at any
|
|
time, it should remain running in the background.
|
|
|
|
Planned functionality:
|
|
|
|
- Email
|
|
- Synchronizes with mail servers, aggregating a local database of messages.
|
|
- Build a comprehensive and full-text search index over all local messages.
|
|
- Send email by communicating with SMTP servers.
|
|
- Calendar
|
|
- Import ical files.
|
|
- Send reminders to various outputs.
|
|
- Contact book
|
|
- Birthday calendar? Gotta figure out how virtual calendars should work
|
|
|
|
Stretch goals:
|
|
|
|
- General
|
|
- Extensions by way of running a subprocess, should be able to register
|
|
namespaced message types.
|
|
- Email
|
|
- Expose a JMAP API, allowing other clients to connect to it.
|
|
- Massively configurable hooks.
|
|
- Chat???
|
|
- IRC / Matrix support possibly
|
|
- Arbitrary object storage?
|
|
- Probably gives extensions a good way of storing data. See y.js
|
|
- Recipe book, grocery list, fitness tracking from apps, etc.
|
|
- Synchronizing with other peers??? Great for shared grocery list
|