the-djmaze / snappymail

Simple, modern & fast web-based email client
https://snappymail.eu
GNU Affero General Public License v3.0
998 stars 121 forks source link

[Nextcloud] feature requests #569

Open the-djmaze opened 1 year ago

the-djmaze commented 1 year ago

This can all be developed in the plugin. https://github.com/the-djmaze/snappymail/tree/master/plugins/nextcloud

Files

Contacts

Calendar

Dashboard Widgets

Related issues: ✓ https://github.com/the-djmaze/snappymail/issues/96https://github.com/the-djmaze/snappymail/issues/307https://github.com/the-djmaze/snappymail/issues/568 https://github.com/the-djmaze/snappymail/discussions/563https://github.com/the-djmaze/snappymail/discussions/556#discussioncomment-3913855https://github.com/RainLoop/rainloop-webmail/issues/2107https://github.com/RainLoop/rainloop-webmail/issues/2023 https://github.com/pierre-alain-b/rainloop-nextcloud/issues?q=is%3Aissue+is%3Aclosed

Help needed

Although i do my best, it's getting almost impossible to do everything myself unless there will be around € 1000+ a month worth of donations to work on everything full-time.

So if anyone wants to pick up Nextcloud development... please DO!

relikd commented 1 year ago

Thank you again for your time and effort. Maybe add the "Help needed" notice banner to your Readme? Hopefully more people will find it that way. I would like to help but I am busy all the time :/ Still, maybe I find some time to help on an issue/feature.

the-djmaze commented 1 year ago

@Mer0me you can keep track of the features here ;)

Mer0me commented 1 year ago

I'm about to make (and then post here) a full comparison of 3 mail clients usable with nextcloud : Nextcloud official Mail app, Snappy mail and Thunderbird (this one is not really a webmail into nextcloud, but it has some specific features very useful for power users).

For now, each solution lacks at least one major feature, and proposes at least one killer functionality. That makes the choice very difficult.

Anyway, the work accomplished here by the-djmaze is awesome. Thank you so much...

Mer0me commented 1 year ago

"Attach files to new emails" is checked, but I can't figure out how to do that. What am I missing ?

the-djmaze commented 1 year ago

I'm about to make (and then post here) a full comparison of 3 mail clients

Great, looking forward to it.

"Attach files to new emails" is checked, but I can't figure out how to do that. What am I missing ?

You are missing the button right from the paperclip which will be added by plugin version 2.6 afbeelding

Mer0me commented 1 year ago

Button wasn't here when I tried (maybe a cache issue). But now, it works. Cool.

the-djmaze commented 1 year ago

But now, it works. Cool.

Good! The window is still ugly, but it works.

Mer0me commented 1 year ago

The address book of Snappy Mail is litterraly replaced by the Nextcloud one ? oO

Mer0me commented 1 year ago

Feel free to complete this first comparison :

Features Nextcloud Mail 2.0.3 SnappyMail 2.23.1 Thunderbird
       
Nextcloud users as contact No (!) Yes Yes
Nextcloud Contacts Yes Yes Yes
Contacts Avatars Yes Yes No
Circles No No No
Send from Nextcloud Files App (in the context menu) No No No
Send from Netxcloud Files storage Yes Yes No (unless sync client)
Send link from Nextcloud Files storage Yes Yes No
Save attachments to Nextcloud Files storage Yes Yes No (unless sync client)
Save individual .EML to Nextcloud Files storage No (unless sync client) Yes No (unless sync client)
Save multiple .EML to Nextcloud Files storage No Yes No (unless sync client)
Nextcloud theme integration ***** *** /
Unified search on Subject Yes Yes No
Unified search on Sender No Yes No
Advanced Search No Yes (**) Yes (*****)
Messages display filter No No Yes
Messages sorting No Yes Yes
.ICS to Nextcloud calendar Yes Yes Yes
UI speed and responsiveness ** **** *****
Rich text editing *** **** *****
Rich text signature Yes Yes Yes
1 signature by identity No Yes Yes
Complex copy/paste from MSWord No No Yes
Local folders No No Yes (off cloud)
.EML opening No Yes (partial) Yes
SIEVE Filter /Out of Office Yes Yes Yes
Multiple compose windows No No Yes
Message context menu No No #461 Yes
Junk mail detection No No Yes
Display modes * *** *****
the-djmaze commented 1 year ago

@Mer0me

.EML opening

SnappyMail can. But only when it is a message attachment or PGP decrypted message. All done through JavaScript because of PGP/MIME support. That's why SnappyMail supports PGP/MIME and Nextcloud Mail doesn't

Features Nextcloud Mail 2.0.3 SnappyMail 2.19.2 Thunderbird
       
PGP/Inline Yes (mailvelope) Yes Yes
PGP/MIME No Yes Yes
S/MIME No Yes Yes

About OpenPGP see #89

Mer0me commented 1 year ago

Showing these 3 mail solutions to different users, the first reaction is : Netxcloud Mail UI is very nice. That make them forget all the technical limitations of the app :/ My advice : work on the CSS of Snappy !

MI-KY commented 1 year ago

First big thanks to @the-djmaze for all the work on the Nextcloud integration, this is really great!

Regarding the comparison table: Nextcloud Mail is able to search for the sender if you use the keywords described here: https://github.com/nextcloud/mail/issues/5611#issuecomment-934477152 But: the search in Nextcloud Mail isn't very good because it is done using the DB of Nextcloud instead of doing an IMAP Search. Therefore (and for many other things) the Nextcloud Mail Client is not a very good alternative to SnappyMail at the moment...

The UI of Nextcloud Mail is nice but in my opinion this has to do with the fact that there are missing functionalities - if Nextcloud Mail would have the same functionalities and options as SnappyMail there would have to be much more buttons ecc. :slightly_smiling_face: . Yes, a different CSS would be nice - but having a better NC integration is even nicer :smile: .

Mer0me commented 1 year ago

@MI-KY : thank you for the tip (from:), I saw that an advanced search dialog box is in progress here I'm not sure the UI integration is related to the number of buttons and features.

I've updated the comparison table and posted it on the Nextcloud github side this time : https://github.com/nextcloud/mail/issues/7482

the-djmaze commented 1 year ago

@Mer0me i've added "Save multiple .EML to Nextcloud Files storage" for next release

the-djmaze commented 1 year ago

I've added the "Save to calendar" but it crashes Nextcloud Calendar.

So i've disabled the feature for now as Nextcloud Calendar is not able to process ics files of other applications properly.

There is also a problem in Sabre for vCards

the-djmaze commented 1 year ago

I've released the v2.7 extension for integration. Go to the SnappyMail Admin panel -> Extensions and update to v2.7

When you click on the cog wheel it should have a new option Enable "Put ICS in calendar" for the experimental integration (due to a reported bug).

Mer0me commented 1 year ago

I've added the "Save to calendar" but it crashes Nextcloud Calendar.

So i've disabled the feature for now as Nextcloud Calendar is not able to process ics files of other applications properly.

There is also a problem in Sabre for vCards

If it can help : This app can sync Outlook calendar with Nextcloud Agenda : https://caldavsynchronizer.org/ and this one from Thunderbird Lightning to Nextcloud Agenda : https://addons.thunderbird.net/fr/thunderbird/addon/dav-4-tbsync/ And Nextcloud Agenda can import ICS itself.

What do you mean by "Nextcloud Calendar is not able to process ics files of other applications properly"

the-djmaze commented 1 year ago

What do you mean by "Nextcloud Calendar is not able to process ics files of other applications properly"

The problem is reported at https://github.com/nextcloud/calendar/issues/4684

derekakelly commented 1 year ago

I think one feature you may want to consider adding is an unread email widget for the dashboard that checks all accounts added? https://github.com/nextcloud/mail/blob/main/src/components/Dashboard.vue

hampoelz commented 1 year ago

Nextcloud Theme for Snappymail is on the way!

A pull request will follow soon... The settings and admin panels still needs to be themed, various other small things are still missing and the code needs to be cleaned up.

I've attached some screenshots for a first look.


Screenshot with current SnappyMail NC theme ![before](https://user-images.githubusercontent.com/28979769/198405555-d8543126-ac83-468c-ae21-a58d15dc9735.png)

Screenshots with "new" theme:

dark-color1 light-color1

(Screenshots with different Nextcloud theme color) ![dark-color2](https://user-images.githubusercontent.com/28979769/198404028-9ab7ed31-1e55-4626-bb13-e07330ee2248.png) ![light-color2](https://user-images.githubusercontent.com/28979769/198404037-822d8345-3987-4d90-a720-6e0a97090944.png)
brendan-pike commented 1 year ago

Is there anything I can do to improve performance of snappy on nextcloud? It's better than nextcloud mail but still takes 12seconds first load snapppy, then 2.7s to load each new email. I'm wondering if there is a mail inbox pre-fetch function so it displays instantly?

elhananjair commented 1 year ago

@hampoelz woow just woow, It's so beautiful. I am eagerly waiting for the merging of your pull request 😊

relikd commented 1 year ago

I had to restore my totally broken nextcloud installation during the last 3 days ... so I can't say whether the following error is related to that or whether this is an actual issue with Snappy.

An error occurred.
Please refresh the page and try again. Error: Failed loading /extra-apps/snappymail/app/snappymail/v/2.19.5/static/js/min/libs.min.js

console says Uncaught (in promise) in run on line 21.

(I did move from a snapd to docker installation, so I wouldnt be surprised if something else broke. But so far everything else is working except SnappyMail)

relikd commented 1 year ago

(I did move from a snapd to docker installation, so I wouldnt be surprised if something else broke. But so far everything else is working except SnappyMail)

Nevermind. It was indeed a merge issue. Deleted the app_path variable and it was auto-generated again with the proper value. (rename "/extra-apps/" -> "/custom_apps/")

brendan-pike commented 1 year ago

Can I suggest that you include version update info in the nextcloud changelog. It's helpful when updates appear in nextcloud to know what the changes are without having to explore github. :+1:

the-djmaze commented 1 year ago

@brendan-pike how to do that?

elhananjair commented 1 year ago

@brendan-pike how to do that?

https://nextcloudappstore.readthedocs.io/en/latest/developer.html#changelog

relikd commented 1 year ago

I'd like to request to change the name of the app in the header area "SnappyMail" -> "E-Mail". (so I dont need to exlpain to non-technical users where to find their emails.

rcsilva83 commented 1 year ago

Snappymail looks promissing! The one thing I miss the most is integrating with Nextcloud Calendar to accept/deny invitations from e-mail.

Thanks for the great work!

rcsilva83 commented 1 year ago

@Mer0me

.ICS to Nextcloud calendar Is tit already implemented? I tested it but there was no "Accept/Deny" buttons on the invitation e-mail.

MI-KY commented 1 year ago

As far as I know this is on the list, but not implemented at the moment - you can see the progress in the first post. I think accepting invitations can only work when the general problem with ics import has been solved...

rcsilva83 commented 1 year ago

@MI-KY

I think accepting invitations can only work when the general problem with ics import has been solved...

You mean this issue, right? https://github.com/nextcloud/calendar/issues/4684

MI-KY commented 1 year ago

@MI-KY

I think accepting invitations can only work when the general problem with ics import has been solved...

You mean this issue, right? nextcloud/calendar#4684

Yes. At least to me this seems connected...

BiglifeMatt commented 1 year ago

Is it possible (maybe already and I'm missing it) to have a Nextcloud file linked rather than attached? Thereby automatically creating a share in Files as well?

relikd commented 1 year ago

Is it possible (maybe already and I'm missing it) to have a Nextcloud file linked rather than attached? Thereby automatically creating a share in Files as well?

Uff, if there was, I would argue strongly against it. Security wise, the sharing dialog is an active part to prevent you from accidentially leaking private information. I would hate it if a mail application would create a share (potentially without password) and leak that information directly via email to another party. Even worse if the email user did not intend to share the Nextcloud link instead of an attachement (document at a specific time vs. automatically getting update.

Sure we can argue that it will make it more convenient, but the more SnappyMail adds on functionality, the more support is needed for issues that arise from it. If you want that feature, you (or someone else) can create a SnappyMail plugin for that instead, maybe?

BiglifeMatt commented 1 year ago

@relikd I get what you are saying. I'm thinking about the overhead of attachments in an email as opposed to the singular file existing. I think it would be better for the change in culture to handle file shares only from Files and not within email whatsoever. No offense to Snappymail or any other service but I wonder if the day will arrive when email itself is a thing of the past. Until then Snappymail is EXCELLENT for my Nextcloud needs!

Mer0me commented 1 year ago

@relikd : a good mail application should propose both : link or attached file. When you use a Nextcloud instance with hundred or thousands of corporate users, it's important to prevent users to attach files they want to share, making grow the mailboxes, multiplying versions of a same document, confusing everyone. Nextcloud official Mail app allows to share a link or to attach the files from Files App.

the-djmaze commented 1 year ago

MIME has a feature to make attachments a location instead of the full file. When someone knows how to make file shares, i will modify SnappyMail to support location attachments.

the-djmaze commented 1 year ago

P.S. Rereading the specs, content-location should only be used as "alternate location" and the file should still be attached. Outlook only supports as filename.URL attachment (hello TNEF).

So, only links in plain/HTML will always work for public/private file shares.

the-djmaze commented 1 year ago

@BiglifeMatt, @relikd and @Mer0me i've added file sharing.

Password protect detection is not yet implemented, but Nextcloud can

jdaviescoates commented 1 year ago

I find the font size a bit small, be great to have a setting where I can increase that

cm-schl commented 1 year ago

I find the font size a bit small, be great to have a setting where I can increase that

This could give you some help: https://github.com/the-djmaze/snappymail/issues/562 Maybe when the new theme https://github.com/the-djmaze/snappymail/pull/629 is ready your problem could be solved 🙂

Mer0me commented 1 year ago

@BiglifeMatt, @relikd and @Mer0me i've added file sharing.

Password protect detection is not yet implemented, but Nextcloud can

No time to investigate now, but a simple update of the app on Nextcloud gave me this message :

"An error occurred. Please refresh the page and try again. Failed loading /apps/snappymail/app/snappymail/v/2.21.1/static/js/min/libs.min.js"

SnappyMail is broken now.

the-djmaze commented 1 year ago

@Mer0me which Nextcloud? There are CSP issues but should be solved.

Best to check your browser console why loading failed.

Mer0me commented 1 year ago

@Mer0me which Nextcloud? There are CSP issues but should be solved.

Best to check your browser console why loading failed.

Uh ? It works today, maybe a cache problem. Nevermind, sorry.

Mer0me commented 1 year ago

@BiglifeMatt, @relikd and @Mer0me i've added file sharing.

Password protect detection is not yet implemented, but Nextcloud can

Where is file sharing option ?

the-djmaze commented 1 year ago

@Mer0me

Where is file sharing option ?

Next release ;) afbeelding

the-djmaze commented 1 year ago

Contacts avatars now working with the Avatars extension.

jdaviescoates commented 1 year ago

Latest update to SnappyMail Nextcloud app means that read messages are not marked as read. Standalone version works fine and after reading there they are correctly show as read in Nextcloud too, but if I just read a message within Nextcloud it doesn't show as read, it stays showing as unread.

jdaviescoates commented 1 year ago

Also, in SnappyMail Nextcloud app (but not standalone SnappyMail) when I click new message the cursor is in the Body field instead of the To field which is a little annoying :) please could we have it automatically go into the To field? Thanks!