Sync between macOS and iOS via Nextcloud

After doing a search on the forums I see a couple of people have asked for WebDAV support but there has never been a reply to it. So I figured I’ll suggest the support once again, but not as a side comment to other tickets, but as a specific topic.

First off I have a Mac, an iPhone, and an iPad that I want to share Scrivener documents between. As of this writing the only way to keep a single project in sync with all three devices is to use Dropbox. I personally don’t like Dropbox to hold important data, and I don’t have a large volume space with the service to share all the documents I wish too. What I do have, instead, is my own Nextcloud server. In a nutshell, Nextcloud is a self-hosted file syncing extensible platform; it can do more but the file syncing function is the relevant part for this post.

I’d love it if I could store my Scrivener docs in a secure location (my Nextcloud server) and make those files available to all of my devices. I understand the team at Literature and Latte is small and can’t just add in any feature requested, especially if only a small group of people will likely gain benefit from the feature initially, so here are a couple of thoughts on how to allow syncing through other systems besides Dropbox. I’ve listed them in order of the number of users that could use the features; from widest support down to smallest.

NOTE: This feature is really only applicable for the iOS version of Scrivener since the Mac and Windows versions can access the files stored in Nextcloud directly via the file system.

1.In the Scrivener app, in addition to local and Dropbox syncing, add support to “sync” to the Files app and all added locations. Since Nextcloud supports the Files app, if I could “sync” via the Files app, I could browse to Scrivener docs that Nextcloud has. This also has the added benefit of allowing syncing from any number of providers (like Google Drive, Box, or any other service that supports the Files app).
2. Add support for WebDAV syncing in addition to Dropbox, like the OmniGroup has done for all of their apps. This gives those who use Nextcloud/Owncloud, macOS Server, or any standalone WebDAV implementation the ability to access their files.
3. Add sync support directly for Nextcloud via their RESTful API: docs.nextcloud.com/server/12/de … alapi.html

Thank you for your time and consideration.

Hi,

(1) is planned but is far from trivial given the nature of Scrivener’s package-based file format. It requires a lot of extra code to be added to the save and load routines, along with monitoring for external changes. It’s high on my list for after Scrivener 3 for macOS is released, but will take a little while (and testing) to get right, so I doubt it will see the light of day publicly until 2018.

(2) has been on my list for a while but is even more complex, and I can make no promises about that other than that it’s something I will continue to consider. Again, it’s complicated hugely by Scrivener’s package-based file format (which is necessary to support multiple files and research files within a project).

(3) is unlikely because supporting the Dropbox APIs is already an ongoing process and adding more APIs, especially ones used by fewer people, adds to complexity and the time required for maintenance.

I’m hoping that (1) will be the best solution all around for many sync platforms, although the solution I have to the package-based issues is currently only theoretical so I’m wary of saying it’s definitely going to happen purely because I could run into serious issues in the implementation. All I can say for definite is that it is planned and the next big feature I am looking to implement in iOS. As I say, it will take a little time, though, so I can’t give any dates, even vague ones; I can only say that it is a high priority.

All the best,
Keith

Old as this post may be, it’s getting more relevant every day.

Nextcloud offers web-access, dropbox-like file sync, calendars, contacts, and it all works like a charm (and out of the box, if you care to set up a Raspberry Pi with DietP Linuxi, for example). The difference is that Nextcloud (like OwnCloud) lets you keep your data within your own control and on your own premises (even on the road, if you set up a VPN, which is equally trivial).

All it takes to tie into Nextcloud, is WebDAV functionality, a standard protocol.
Will this be implemented in Scrivener one day?

This is not a Nextcloud-specific question, by the way. I’m asking (somewhat pedantically, I admit) whether the Scrivener people would be interested in supporting non-proprietary, non-walled-garden solutions. Be it WebDAV, SFTP, whatever.

Please do.

-jcw

1 Like

I agree completely to the posting above. Additionally Dropbox introduced a “three devices limit” if you if don’t subscribe to a monthly/yearly plan.

I use more than three devices, so I had to close my Dropbox. I am not willing to be forced into a monthly plan by my writing software. As much as I love Scrivener this is giving me serious headache. There is Nextcloud (just as an example) that works fine. Another reason that speaks for Nextcloud We keep our files. They aren’t “somewhere in the cloud” - they are exactly where we put them.

Please do.

This is something I am keen to get too. I sync my Scrivener files between Windows desktop PC, Windows laptop, and iPhone via Dropbox. I have NextCloud on my web server and find it very robust and reliable.

I don’t like to trust Dropbox with my data and would prefer to sync Scrivener via NextCloud.

Any progress on this?

Cheers, Peter Marquis-Kyle

1 Like

So far no update yet. Since many years there is no update. And this becomes so frustrating to me, that I am almost about to drop Scrivener as my writing tool.

From what you say you are using Scrivever. What does not work?

Until NextCloud makes available an API for both Windows and most importantly iOS, which can handle the complex structure of a Scrivener project, it’s not going to replace Dropbox for sync’ing with iOS. Dropbox is still the only cloud service that provides the necessary APIs.

There are many threads asking for sync’ing via OneDrive and iCloud, and many suggestions on using the Files app on iOS and other methods… though they don’t sync’ directly, the way Dropbox does. The same problem exists with them.

All that said, it seems there is hope for iCloud, with developments both on iOS and MacOS. There is a post from KB from about 6 months ago where he explained a bit about that. Whether, and if so, how that will make it possible to use iCloud to sync between Windows and iOS, I have no idea.

:slight_smile:

Mark

There is no other syncing method available than Dropbox if you want to sync between iPadOS/iOS and any other device.

  1. If you talk with with an API (handling file transfer with it), the client doesn’t matter and the OS it’s running on.
  2. There is an API available in Nextcloud! Since … almost ever! :slight_smile: It’s called WebDAV. Accessing Nextcloud files using WebDAV — Nextcloud latest User Manual latest documentation It’s an open standard and can (and is) implemented in almost any modern software that uses file transer and syncing. So if WebDav was implemented, you just have to do it once to support a lot of other cloud storage options.

There is no “complex structure” of a Scrivener (.scrivx) project. It’s a pretty good structured directory, that, thanks to a system option, behaves like a file if you are under macOS/iOS/iPadOS.
Aside from that is there an XML file that references to a lot of other files in that directory. There is nothing special about it or that makes it more complex than any other files or directory. It works perfectly fine to sync Scrivener projects with other cloud storage solutions.

There are posts on this topic dating back almost 12 years and nothing has ever happened.

I understand that developing needs a lot of time and ressources. But imagine that: Dropbox COULD pull the plug any time. Because … why not. Companies can go bankcrupt. Or a big data leak happens and through expensive law suits Dropbox has to shut its doors. Who knows. So relying on a proprietary technology isn’t the best solution. And forcing users to buy a subscription, or using a syncing service you have to “trust” because you have no other choice here … that is just not right.

And if they need more hands to get this feature in - even for that there are options. I would happily support a fundraiser for this. Or pay for the next update. But after 12+ years I expect more than ignoring their user base.

In my writing courses I get asked which syncing methods Scrivener uses and if I say “It’s only dropbox” my students are disappointed by it.

It is not accurate, either. There are multiple ways to transfer projects to and from iOS devices. Dropbox provides the added convenience of a mechanism that keeps track of internal project changes so that you don’t have to transfer the whole thing. But if Dropbox disappeared tomorrow, Scrivener would continue to function and all users would still have access to all their data. (Provided that they didn’t store material exclusively online, which we don’t recommend anyway.)

This is also not accurate. The Scrivener project contains potentially hundreds of sub-directories, one for each item in the Binder. MacOS presents it to the user as a single file, but it does not “behave like” a single file behind the scenes on any platform.

The reliance on Dropbox for iOS is fundamentally due to the limitations of iOS. It (unlike Windows or Mac OS) does not offer a true file system, but requires that each program manage access to its own files. As the post from KB that you are apparently choosing to ignore explains, Apple has improved this situation over the last few iOS releases, but it still doesn’t offer the flexibility that Macs and PCs have had for decades.

That’s what I have done. I use another app to write on multiple devices. I keep Scrivener on one Mac and copy text to it if I need to—although that hasn’t been necessary for over a year now.


Scrivener was developed before cloud storage and syncing became widely available.

Other apps can sync across multiple operating systems, using multiple sync services. And those apps and sync services can manage hundreds or even thousands of files and nested folders without a problem.

The difference is that the apps that work in that way have predominantly been designed (or been comprehensively rewritten) with sync and cloud services in mind. As this and numerous other threads make clear, Scrivener hasn’t.

It isn’t sustainable to suggest that sync services other than Dropbox are at fault for not handling Scrivener projects. Sync services and other apps work fine. Scrivener doesn’t. Scrivener is the outlier here, and it has been for years.

Scrivener 4 has been touted as being a substantial rewrite. Perhaps a revamped S4 won’t have these perennial issues. Might be years away if past development cycles are an indicator.

I find it interesting that the question of Dropbox alternatives pops up so frequently. Also interesting is the continued L&L response that they don’t recommend it.

I would suggest to anyone looking for a non Dropbox solution, they need to look elsewhere.

1 Like

I would invite you to read the support forums for some of those other services and other apps before making that claim. iCloud, for example, frequently fails to synchronize my grocery list. Which is stored in Apple’s “Reminders” application. Using Apple software to sync Apple application data between Apple devices is about as ideal a use case as you’ll find, and yet…

1 Like