mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-12-27 19:07:15 +08:00
Update readme
This commit is contained in:
parent
ec6ec49b98
commit
a7e545b924
1 changed files with 25 additions and 3 deletions
28
README.md
28
README.md
|
@ -1,11 +1,12 @@
|
||||||
Nylas Mail v3 [Unnamed]
|
Nylas Mail v3 [Unnamed]
|
||||||
====
|
====
|
||||||
|
|
||||||
|
**Hello! This is a significant fork of Nylas Mail which completely replaces JavaScript mail sync with a C++ core built on Mailcore2. Unfortunately, it's not ready for use - check back soon!**
|
||||||
|
|
||||||
|
|
||||||
High level Goals:
|
High level Goals:
|
||||||
---
|
---
|
||||||
|
|
||||||
Fix longstanding issues that have always bugged me or stopped me from using the mail client personally. Primarily poor performance with multiple linked accounts and jank in the composer.
|
|
||||||
|
|
||||||
- Replace JavaScript mail sync (client-sync package) and the Electron "worker window" with a new, high performance codebase written in C++ and based on Mailcore2. Make the Electron application just the UI layer.
|
- Replace JavaScript mail sync (client-sync package) and the Electron "worker window" with a new, high performance codebase written in C++ and based on Mailcore2. Make the Electron application just the UI layer.
|
||||||
+ One C++ process per email account.
|
+ One C++ process per email account.
|
||||||
+ C++ and JS communicate via the child process stdin/stdout streams.
|
+ C++ and JS communicate via the child process stdin/stdout streams.
|
||||||
|
@ -15,7 +16,28 @@ Fix longstanding issues that have always bugged me or stopped me from using the
|
||||||
- Make windows open faster by just having less code.
|
- Make windows open faster by just having less code.
|
||||||
- Bring back mail rules.
|
- Bring back mail rules.
|
||||||
|
|
||||||
New features:
|
|
||||||
|
Technical Breakdown of Changes:
|
||||||
|
---
|
||||||
|
- Activity window and client-sync package removed.
|
||||||
|
- MailsyncBridge, a new singleton in the main window, manages C++ sync workers.
|
||||||
|
- DatabaseStore no longer provides an interface to write to the database from JavaScript and the following have moved to C++:
|
||||||
|
+ Database setup and migration
|
||||||
|
+ Search indexing of threads/contacts
|
||||||
|
+ Delta processing
|
||||||
|
+ Task processing
|
||||||
|
- Heavy node modules removed:
|
||||||
|
+ Bluebird
|
||||||
|
+ Q
|
||||||
|
+ request
|
||||||
|
+ etc...
|
||||||
|
- Package manager has been completely rewritten to be more performant and load packages in two phases.
|
||||||
|
- Delta serialization / deserialization performance has been dramatically improved by removing the JSON reviver.
|
||||||
|
- FileDownloadStore / FileUploadStore have been merged into AttachmentStore
|
||||||
|
|
||||||
|
|
||||||
|
Future Features:
|
||||||
|
----
|
||||||
- Receipts
|
- Receipts
|
||||||
- Templates with per-template performance tracking
|
- Templates with per-template performance tracking
|
||||||
- Groups
|
- Groups
|
||||||
|
|
Loading…
Reference in a new issue