Add an option in Space settings to automatically download all files to local storage
HOW COULD IT BE DONE
A toggle in Space settings. When disabled, files would only get downloaded when opened on the device (as it currently works); when enabled, all files would get downloaded automatically to the local storage.
One additional toggle could let users decide whether to only allow downloads on Wi-Fi, or to also allow downloads on cellular data.
REAL WORLD USE CASES
I constantly find myself offline, trying to open photos or videos from my Space, only to find that it is the first time I open them on this particular device and as a result cannot open them offline.
This would make Anytype truly offline-first.
RECOMMENDED ALTERNATIVES
The only workaround I can think of is to prepare for some time offline by literally going through our entire Space and opening every single file so they get downloaded, from every single device we use Anytype on, which is completely unrealistic.
Upping this since this is still my biggest issue. At least a better file manager to manage remote or local files. Like an option to set files to always available for offline.
This is the one thing that keeps me from using Anytype at all.
As long as this is not implemented properly, iâm forced to stay with Joplin. I MUST have full sync with full offline support on all devices automatically.
Has this massive requested feature be implemented yet?
If not, i still wont join of chip in.
Its literally game breaking if this is not implemented.
Imagine working with hundreds , if not thousands of files. Then taking a long flight and to be able to work on your notes and files, you need ot MANUALLY open ONE by ONE each file to be able to use it. Thats just plain stupidly implemented.
Make an optional buton in each client (windows, android etc.etc.) to have ALL notes, files, documents, pictures, videos, EVERYTHING downloaded and synced up when opening the app. Hell if even create a button where you press it to choose to download everything.
Going on a flight with no connection? Simple, night before, have everything synced offline. Turn on airplane mode and have the ability to still open, read every file note, pdf, doc etc while on the plane.
When connection it turned on again, have everything done offline synced again so other online devices can automatically download it.
Iâd like to see this feature implemented too, but in the meantime I found a workaround, for Linux at least.
On Linux, Anytype stores data in /home/[user]/.config/anytype/data. If you copy the contents of that directory to the same place on another device with the Anytype desktop app installed, then photos and other media objects will be effectively mass downloaded. The local data store of the two devices will then be the same.
When I tried this, I make sure Anytype was closed and not running on both the source and destination devices. Make sure the system tray icon is closed as well.
I had uploaded a lot of high resolution images to one device, and wanted to make sure it was all present on my other computers.
The result was successful, after copying the data folder, Anytype fired up on my other computers and all the new images were present without any downloading.
I donât know if this will work with the Mac and Windows clients, or if it will work across desktop operating systems.
You should be able to see the location of where Anytype stores your data by going to Settings â Vault â Data Management and look at âData Locationâ.
Would love to see this as a feature on all devices too. I have a 128 GB SD card which is more than enough to download all my Anytype files locally so I can access them on my phone.
EDIT:
Just want to update this in case any developer sees it, but I noticed today that apps in my SD card are not capable of making Android widgets. So if this feature is being planned for mobile, a âcustom data storageâ location option would need to be implemented so the app itself can remain on internal storage while data is loaded onto somewhere with more space like an SD card.
To give an idea of how difficult it is to use Anytype without this feature: there is a 30min video I wanted to watch on my iPad in a park without internet, but feared that it wouldnât be fully downloaded and that it would stop mid-way while I was watching it. So when I was still online, I played the whole video on the iPad while I was doing something else⊠This was the only way I could find to be truly sure the entire video would be downloaded when I need it!
I completely agree with this idea. I donât mind using a lot of space on my computer or phone to store these files. However, a smart method is needed to ensure that old files are synchronized/updated in a timely manner.
When texts and photos added in pages in the destop Anytype app, it will be automatically synced to the Anytype server.
When I open my mobile Anytype app, it automatically try to sync with Anytype server.
However, in the mobile Anytype app, when it shows âsyncedâ indicating the syncronization has been completed, only the texts can be found.
The photos in the linked pages are just shown âError while loading picturesâ when i click into those pages.
I have to wait or try to re-enter the pages several times so that the photos can be correctly loaded.
WHAT DO YOU RECOMMEND?
á An option to force the sync for everything: inlcuding texts, pictures, filesâŠ
HOW COULD IT BE DONE?
á Add a button in the sync status to force the sync for everything.
REAL WORLD USE CASES
á Ensuring all the data (including texts, pictures, files, etc.) have been synced in the local Anytype app is not only benefited to save some time from loading those data when click into those linked objects but also be crucial especially for the device is going to be used in another place with no internet access.
RECOMMENDED ALTERNATIVES
á Or, simply the app can automatically ensure the âsyncedâ indicating synced âEVERYTHINGâ á After all, when it shows âsyncedâ, it is supposed that everything has been synced.
ADDITIONAL CONTEXT
á There are similar issues can be found in the Bug Report:
I tried using the export feature as another workaround to âforceâ Anytype to download all attached files to the current deviceâs local data store.
I ran a full Space export, (e.g., File â Export Space) to Markdown with the Include files option enabled.
I ran this on a device that had some images missing locally that were uploaded on a different device.
After the export, I checked the disk usage of the Anytype data folder, and it increased by the expected amount. The missing images were also present in the exported data folder.
In spite of this, Anytype still needed a network connection to display the new images in the client app. I tried turning off network access on my client to see if images would load after doing this, and they did not load correctly.
Iâm not sure why this is, since the application clearly had to download the images to export them, the new images were present in the export and it wrote new stuff to the Anytype data folder.
Maybe this is a useful workaround for a situation where network access will be marginal, like through a tethered cell phone? The new images seem to load faster after âexport-loadingâ them with this method than just waiting for Anytype to load them normally, so maybe some metadata needs to sync before the application will display the media and significant bandwidth is saved since Anytype is not downloading the whole file.
Would be curious to hear from the Anytype dev team as to what is happening behind the scenes with exports.
Note that this is not an option with mobile clients as they lack an export function. I also looked into manually copying over the data store on the Android client, but sadly the Android OS will not allow accessing an apps data in newer version of Android on non-rooted devices.
I hope you can provide a feature that allows users to pull all data from the backup node with one click. Considering the complexity of development, I believe this feature should not overly interfere with the current development process, as it only requires pulling all files to the local device, regardless of whether they are text, images, or other file types.
Here are some scenarios where this feature could be beneficial:
Offline Access: Before boarding a plane and entering a no-internet state, we could pull all files to our local device, ensuring we can browse all our files offline. This is particularly useful when we open Anytype without a clear idea of what specific content we need to view, or when the content we need links to other files. Pulling everything to local storage ensures we can access all content at any time.
Data Security: Suppose on device A, a user inserts one or more files into a note and then backs them up to the backup node. Another device, B, logs into the self-hosted node, but Anytype doesnât immediately pull all resources locally. If device A then uninstalls the client, and the backup node stops operating or becomes inaccessible, device B will never be able to retrieve those files inserted by A. This negatively impacts the usability of local content, as we would need to rely on either another client with all data or a backup node. However, we currently lack a way to pull all full data to our client in one click, so data on each client may be incomplete. If a file only exists on the backup node and a particular device, and the backup node is inaccessible, weâd also need to know which device holds the file. This is frustrating; weâre not robots or databases and canât pinpoint the fileâs location directly. Most people canât place all devices on the same local network for syncing at any given time.
Why I Believe This Feature is Appropriate and Feasible to Develop, and Also Friendly to User Clients:
We live in an era where storage devices are very affordable and spacious. Whether itâs our phones or external storage devices, they are very large and cheap. With minimal expense, we can buy phones with 256GB, even 512GB of storage, and hard drives with over 1TB capacity. I believe that for the above issues, most people would be willing to use large storage devices as a base solution, given they are both cheap and convenient. Besides, the storage space required by most of us wonât be enormous, so even pulling all data wouldnât result in an intimidatingly large storage size.
Yes, I also searched and reviewed these requests, but it looks like the team didnât offer an explanation below why they didnâ t, Without a team memberâs response, continuing to respond below might not be noticed, so I opened a new thread. This request has been really long, and then it shouldnât be a difficult feature to implement