I'm throwing this here as a general overview of my workflow with a desktop, laptop and lots of projects in different disciplines.
Synchronisation
With my new laptop, Pandora, I wanted to be able to easily sync any work from my desk to wherever I was in the world. I've been doing this for a while with my iPad and phone, but being portable Apple devices with horrible locked down ecosystems, it's never been totally seamless. With a portable desktop operating system though, it is.
I've been using this set up for years now, running it in an entirely local-first way with software that doesn't carry any ongoing cost, which I'm very pleased with.
I'm using three — unfortunately proprietary1 — pieces of software to deal with my data.
- Resilio Sync
- Tailscale
- Parsec
I did pay for the professional license of Resilio Sync — which was a one-time fee of ~£50 — but that product has since become a free loss leader (you just have to sign up for their newsletter I believe).
Each of the folders on the X drive is mapped as a Resilio Sync share. On Hyperion, my workstation, these are always full copies — no selective sync — because Hyperion is the central source of truth. Every other device either wholly or selectively syncs those workspaces to a similarly mapped drive.
This means my laptop is constantly synced with my workstation totally locally and without any server/NAS infrastructure or internet in between. I can sync my laptop before I leave for a meeting or a day in an office — always locally, over LAN — and know that everything I could possibly need is available; all the convenience of Dropbox or Google Drive without how slow, invasive and generally shit they are in practice, and it all works perfectly offline.
If I do need to sync something over the internet, either because I forgot it or I want to upload it to set my desktop off doing something while I'm roaming, I use Tailscale as my VPN. I do have a router with a capable L2TP VPN, but Tailscale lets me loop in other devices more easily and it's easier to explain to non-tech people2. For example, I have Resilio shares and Tailscale connections with collaborators, partners and family for all kinds of stuff from working and gaming together to sharing photos and accessing my Jellyfin server. I can then use Parsec or RDP to access my PC remotely.
I've been able to stay well within the free tier of Tailscale — a handful of connections with a handful of people, which makes this a really cost effective setup even if I do need to pay (or switch to a marginally more expensive replacement) some day. But for now, it's free!
One of the cool things about Resilio Sync is being able to set up two tiers of access. Every share you have can be made available to all of your devices by default, even if you don't sync them. This means you can grab anything at any time, even if you don't normally want it taking up space. You can also selectively sync folders from a share you do have synced, so you can just take the one thing you need instead of syncing everything all at once. I use this to have all of my work always available to me anywhere I am without actually taking up any space. It's unbelievable how useful this is for travelling, meetings and networking and just being able to stay productive in general. It's the kind of thing you have to use Dropbox for... but you don't! There's some more about this down in filesystem below.
All of this makes for a super smooth workflow with almost zero downsides. Everything I do is local, as in networking/cloud/big data and literally as in on my own hard drive in a sensible, well-organised system that's also its own archive. It scales flawlessly, interoperates seamlessly across (sensible, desktop operating system3) devices and I've not been without something I needed even once since beginning to use it.
Writing
It's briefly mentioned in Uses how I like to write, but I'll re-iterate it here because it's one of the major crafts I use this offline workflow for. I write in a plain-text editor, Sublime Text, which works far better than any 'artistic' writing application I've ever used, for the simple reason that it's actually designed to edit text, and features powerful controls for doing so. I have its distraction free mode configured to let me write in a way that's very comparable to iA Writer. Here's a screenshot:

You can see a word counter in the bottom left, which is a plugin I wrote myself that not only runs super fast in Sublime, it also ignores comments, a typical problem with writing formats like Fountain or Markdown and word-counters. I write notes and even entire scenes out in large block comments, and I usually have a guiding star outline with notes and snippets in a massive comment near the start of the screenplay or novel — I don't want that counted in the word count, but I do want it right there in the file so I can add to it if something flashes up while I'm writing a different scene.
Oh and if you're not familiar, an example of a comment in the Markdown format is the one joking about the screenshot in the screenshot above.
As mentioned, I write in plain-text almost exclusively. This means Markdown files, like in Obsidian, Fountain files for screenplays and manuscripts (and honestly a bunch of other stuff) or just pure .txt files. The advantage of this is total freedom from any service or proprietary format: no panicking about Google Docs or account deletion or can I get my data out? It's always right here, in future-proof text. I can write on any device I can sync to because every device and operating system has a plain-text editor. I can also version control my writing easily and write my own tools to process it because it's in such a simple storage format.
For instance, I format all my Fountain files with a self-authored tool called Meander, which turns plain-text files into PDFs, and specifically into standardised screenplays and manuscripts (Meander also has a Sublime Text extension I wrote). Spindle, my self-authored static site builder takes care of turning Markdown notes (and its own plain-text syntax) into templated HTML for me automatically — this very page comes straight from my Obsidian vault! The only other things I regularly write are documentation at work, which I write here first and upload to shared resource servers or internal wikis later, which is equally dead-simple because I never have to worry about cutting and pasting inheriting any formatting or rich text information. Plain-text is style-agnostic, for the better, in my opinion.
Filesystem
I devised a filesystem structure for working when I built Hyperion that I've never since felt the need to change, which is pretty big deal because I'm always fiddling with stuff. This is solid.
Hyperion has four drives:
C:1TB NVMe — the OS and applications. Basically nothing else.X:2TB NVMe — the 'scratch' drive where I do all my work.V:8TB HDD — the vault drive.M:16TB HDD — the media drive. (Steam, Jellyfin, etc.)
The two of note are X and V. Work happens on the X drive. Everything must be rigorously organised there, with top-level folders for different categories of work, such as dev, film, audio, photos, web, design, etc. For example:
X:/dev/meanderis MeanderX:/dev/lenais LenaX:/film/take_a_sliceis Take a Slice
The 8TB V drive is an exact structural mirror of X, such that archiving or unarchiving a project is a case of moving it back and forth between the two. Being four times the size also means it can host local backups. I don't automate this, I just run it as a command per-project at my own discretion4.
There's also a top-level library folder of shared resources, and individual disciplines can also have their own library folders. X:/library is shared between disciplines, and then X:/audio/library is only shared audio, etc. Any project that's worked on for any amount of time or becomes a 'real' thing will have any library data vendored into its own project directory too, so while the library is good for saving space with shared assets, once something becomes 'a serious project', it doesn't come at the cost of archival ability.
Each one of these top-level folders is also a Resilio Sync share, so if you recall the part earlier about being able to dynamically pull down an entire share or selectively sync a folder within it, I can literally grab an entire project in seconds to take with me, even if I don't normally carry it. For example, my laptop doesn't need my film's entire production repository on it... unless I'm going to a meeting with a studio.
I love this system because it scales so well. V will probably become a NAS one day and X a RAIDed set of SSDs on an expansion card for bigger projects. Right now though, it can all just live in my PC and I don't need additional hardware to manage it. Similarly with the library folders and vendoring those assets, if a project scales up to collaborators, I don't have to reinvent the wheel. I can just expose the project directory, add an incremental cron-job backup (in case of collaborative clobbering) and it can remain self-contained.
I also have a handful of 2-3 line functions in my dotfiles which help manage this:
# execute rsync clone for project from X to V
function backup -a 'name'
mkdir -p /mnt/v/$name/
rsync -ap --delete-after /mnt/x/$name/ /mnt/v/$name/
end
# execute rsync move for project from X to V
function archive -a 'name'
mkdir -p /mnt/v/$name/
rsync -ap --delete-after --remove-source-files /mnt/x/$name/ /mnt/v/$name/
rm -r /mnt/x/$name
end
# execute rsync clone for project from V to X
function unarchive -a 'name'
mkdir -p /mnt/x/$name/
rsync -ap /mnt/v/$name/ /mnt/x/$name/
endbackup dev/meanderwill synchronise the project from X to V, with X as the source of truth.archive dev/meanderwill move the project from X to V and remove it from X.unarchive dev/meanderwill do the opposite but leave a copy on X as a pre-emptive backup.
- To be clear I have no issue with proprietary software morally, my biggest concern is those companies shutting down and their products disappearing. It would be nice if we could mandate some actually useful legislation about this, like liquidated businesses making software needing to open-source them. Anyway, the good news is they're all easily replaceable in an enshittification or belly-up scenario. ↩
- I could wish no worse fate on anyone than talking a neophyte through adding an L2TP VPN connection to Windows. ↩
- iOS and iPadOS can technically still integrate with this, but it's fully manual — as in you have to manually open the Resilio Sync app and wait for it to sync because of Apple's awful, hostile lack of API support for apps that they fear could compete with iCloud storage. ↩
- I do this for 'oh shit' reasons because it's super nice to get even a two-day old copy of something back immediately instead of watching as some tool beats you to the punch of overwriting it while you scrabble to grab the backup. I use version control on all big projects anyway and I have a remote backup, so I'm usually covered. ↩