Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xi/xi-conversations
Minimal clone of thunderbird conversations
https://github.com/xi/xi-conversations
conversations email thunderbird
Last synced: about 2 months ago
JSON representation
Minimal clone of thunderbird conversations
- Host: GitHub
- URL: https://github.com/xi/xi-conversations
- Owner: xi
- Created: 2017-04-09T18:56:37.000Z (almost 8 years ago)
- Default Branch: main
- Last Pushed: 2024-09-15T09:00:08.000Z (4 months ago)
- Last Synced: 2024-09-15T11:31:55.598Z (4 months ago)
- Topics: conversations, email, thunderbird
- Language: JavaScript
- Homepage:
- Size: 170 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This is a minimal clone of [thunderbird-conversations][1]. While contributing
to that project I found that I did not understand a lot of things. I used this
repo as a notepad whenever I found out how something works.As a consequence, this project is **not meant to be used in production**. That
is not to say that it would not work. But I do not recommend it.# Differences to thunderbird-conversations
- I ignored most edge-cases to keep the code straight-forward.
- No preview.
- No quickreply.
- The conversation view is not automatically updated when new messages come in.
- The conversation view is only triggered when you open a message in a new tab.# Things I learned while working on this
- Many thunderbird APIs have next to no documentation. But reading the code is
not that bad and it is easily searchable with [DXR][2]. Much of the
thunderbird code itself is actually written in JavaScript.
- The extensions relies heavily on [Gloda][5].
- thunderbird-conversations was a [bootstrapped extension][3]. This has since
been replaced by [web extensions][4]. Much of the functionality is not
supported via the new APIs so thunderbird-conversations now makes extensive
use of [WebExtension Experiments][6].
- Plugging into enigmail is hard.
- protz and Standard8 did an amazing job handling all those edge cases and
making it work for humans.# Install
If you feel adventurous and actually want to try this out, you will need to do
the following steps:- Install node with npm and browserify as well as sassc.
- Run `make`.
- Link the repository to `$PROFILE/extensions/conversations@xi`.
- Restart thunderbird.[1]: https://github.com/thunderbird-conversations/thunderbird-conversations
[2]: https://searchfox.org/comm-central/source
[3]: https://developer.mozilla.org/en-US/Add-ons/Bootstrapped_extensions
[4]: https://webextension-api.thunderbird.net/
[5]: https://web.archive.org/web/20210601133829/https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Creating_a_Gloda_message_query
[6]: https://webextension-api.thunderbird.net/en/stable/how-to/experiments.html