danielroehrig / diary

Simple Diary for nextcloud
GNU Affero General Public License v3.0
16 stars 4 forks source link

Store entries in CalDAV/VJOURNAL #49

Open UberElectron opened 2 years ago

UberElectron commented 2 years ago

Hi,

I'd come to suggest using CalDAV as a backend for this app. CalDAV is already integrated into Nextcloud for Calendar and Tasks (VTODO) apps. But there is no "frontend" with VJOURNAL support.

This way, entries can be sync between devices without using a file based system or a "Diary app for Nextcloud". As far as I know, Diary stores his entries on a db as CalDAV does.

My use case will be writing my diary on my phone and have it sync with Nextcloud. DAVx5 and JTX board are Android apps that are working towards CalDAV integration with Nextcloud.

I will mention two issues they created for Notes and Tasks Apps for this same reason: nextcloud/tasks#1955 nextcloud/notes#197

Thanks.

danielroehrig commented 2 years ago

Interesting. I know about DAVx5 but I've never heard of VJOURNAL. I'll keep this in mind.

danielroehrig commented 2 years ago

Can you show me the VJOURNAL specification?

UberElectron commented 2 years ago

It seems to be this: VJOURNAL RFC: https://icalendar.org/iCalendar-RFC-5545/3-6-3-journal-component.html

Calendar App seems to use some JS libraries to parse and use CalDAV:

I have never use JS before. You can take a look how they use CalDAV: https://github.com/nextcloud/calendar .

According to this issue, VJOURNAL is supported on Calendar, so their libs should support it as well. nextcloud/calendar#1514

I hope this is useful.

ColdHotman commented 2 years ago

I've tried some apps that specifically support the journal function of VJOURNAL/CalDAV, like Evolution for Linux and JTX for android. JTX is particularly smooth operating and I wouldn't hesitate to use it as a companion app on android for writing journal entries for Diary.

rogercreagh commented 2 years ago

For me support for VJOURNAL would be essential. I already make extensive use of Journal CalDAV entries using jtxBoard on Android (check it out, it is very good) and would love to have a NC app which worked with VJOURNAL in calendars.

Two things to note firstly that Nextcloud does not enable VJOURNAL items in calendars by default see #4436 - you have to manually add it to the components column in the oc_calendars table - but you could do that on installing the app.

Secondly there is at least one update to RFC5545 which adds some refinements - RFC9073. In particular STYLED-DESCRIPTION property would be useful for allowing text/markdown or text/html RTF formats for the plain text description - although you can put markdown in the plain text DESCRIPTION property it is not such a good idea if you are sharing the journal with other apps that don't display markdown styles and confuse the naive reader with spurious *_~# etc

rogercreagh commented 2 years ago

There is also a php library for CalDAV https://github.com/wvrzel/simpleCalDAV which is quite old but still works. I'm using it as the basis for different Vjournal Diary component for Joomla.

TristanCottam commented 11 months ago

Interoperability being one of the key selling points for Nextcloud, I'm surprised this app still doesn't integrate with CalDAV. As @rogercreagh said, this seems like an absolutely essential feature, and would most likely make this app much more popular.

danielroehrig commented 11 months ago

Here's my comment to the related issue

https://github.com/danielroehrig/diary/issues/58#issuecomment-1845445980

Bottom line is: I need help with the front end to do changes in the back end.