Proposal to start a new implementation of Thunderbird based on web technologies
Ben Bucksch
ben.bucksch at beonex.com
Fri Apr 14 21:32:17 UTC 2017
Ben Bucksch wrote on 24.03.2017 18:04:
>
> Summary:
>
> * Our base goes away. Gecko will change dramatically in the future,
> and dropping many features that Firefox does not need anymore, but
> that Thunderbird relies on.
> * Our codebase is now roughly 20 years old. It heavily and
> intrinsically relies on those very Gecko technologies that are now
> being faded out, more or less aggressively.
> * JavaScript and HTML5 have evolved dramatically. Entire
> applications in JS are now realistic, and have been done. There
> are several existing JS libraries we might leverage. JavaScript is
> an efficient language, which allows fast development. A rewrite in
> JavaScript makes sense now.
> * We will learn from shortcomings of existing Thunderbird, and solve
> them, for example a more flexible address book, and cleanly
> supporting virtual folders without overhead.
> * The goal of the rewrite is to be close to the existing
> Thunderbird, in UI and features, as a drop-in replacement for end
> users, without baffling them. They should immediately recognize
> the replacement as the Thunderbird they love. It will install and
> run as normal desktop application, like Thunderbird does today. It
> keeps user data local and private.
> * We can also make a new, fresh desktop UI, as alternative to the
> traditional one, for new users. The technology also gives us the
> option to run it as mobile app.
> * While we implement the new version of Thunderbird, the old
> codebase based on Gecko will be maintained until the rewrite is
> ready to replace the old one.
> * I expect this effort to take roughly 3 years: 1 year until some
> dogfood (usable by some developers and enthusiasts). 2 years until
> a basic feature set is there. 3 years until we can replace
> Thunderbird.
>
> I will describe each point in more detail below.
>
Based on the discussion, I'd like to amend or correct my proposal in the
following points:
* Thunderbird based on Gecko would continue to be maintained on the
current level of effort. I did write that above, but many apparently
misunderstood me.
* If some of the newly written components can be backported to old
Thunderbird, with a reasonable amount of effort, we can do that. The
address book would be a prime example for that. However, that
backporting is a separate effort and would not be done by the same
team that writes the new app, but other developers, so that one team
can concentrate on the new Thunderbird-Next-Generation and another
team on the old Thunderbird.
* There are some existing libraries that we might be able to use for
TB:NG, e.g. emailjs.org . There are also a lot of modules on npm.
Ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/tb-planning/attachments/20170414/0a8a0bf2/attachment.html>
More information about the tb-planning
mailing list