Zotero: a clean solution for academic organization

I haven't been this excited about a piece of software since Neovim, by the way.


Now that I'm in my final year of undergrad, I need to lock in and actually start reading textbooks and papers. Up until now, I've always just used good ol' GoodNotes to annotate. Recently though, I don't know whether it's my iPad that's starting to show its age, iPadOS, or the app itself nagging me to buy the latest version, but there's so much friction with using that thing right now. Sometimes importing files just doesn't work. Sometimes Nextcloud's Files app integration takes ages to load directories. Sometimes I want to put it on my second monitor, and I don't have a Mac, and the web app sucks, and even if I did have a Mac, the Mac app sucks too.

My first meeting with Zotero was when a labmate pulled it up to open his annotated copy of Hennessy and Patterson's Computer Organization and Design: The Hardware/Software Interface. I thought it was just another tab-centric PDF reader, but it didn't look bloated and I liked the interface, so I tried looking it up. I'm really glad I did, because I'm not exaggerating when I say this changed my studying life. Importing anything is a breeze. You just drag files into it, make collections and subcollections, or if you're a control freak, you could even make your own tags and filter items that way. If you're even more obsessed with organizing your library, you could fill out the metadata fields yourself, or look up the ISBN and have Zotero do it for you.

Automatic metadata tagging with ISBN.

All of your files are stored on Zotero's servers by default. If you like Zotero, though, you'll find yourself running out of space quick. You only get 300MB of storage before you need to pay for more. Luckily, Zotero offers another way to add more storage, which is WebDAV. I won't get into the details of how to selfhost a WebDAV server (maybe next time), but if you already have one or know how to, it's really easy to get Zotero working. I have a Nextcloud instance running on my homelab, so I'll use that, but if you have a WebDAV server running, you'll probably know how to adapt these steps to your setup.

Nextcloud exposes a WebDAV instance via a link you could get from "Files settings" on the bottom left corner in the web UI:

Getting the WebDAV link from my Nextcloud instance.

Then, in your Zotero app, go to Edit->Settings, then under Sync, look for the setting "Sync attachment files in My Library using" and change it from "Zotero" to "WebDAV". Then fill in your details, and click "Verify Server". If you haven't created a zotero folder yet, it will prompt you to create it first.

Go into Edit->Settings, then Sync.

Look for the setting "Sync attachment files in My Library using" and change it to WebDAV.

Fill in your details, then click "Verify Server".

Otherwise, you should be all set. Just exit out of settings and click on the sync button, wait a few minutes, and all your files will now be hosted on your WebDAV server! Now you don't even have to worry about painstakingly organizing your books and PDFs in 6 levels of folders on your NAS.

Bottom line, I really have no notes for Zotero. Actually, maybe just one. But it's more of a wishlist item than a critique. If Zotero had better support for handwriting with the Apple Pencil on the iPad (and other stylus/tablet combos, and no, the current Draw tool sucks for handwritten notes), it would absolutely trounce GoodNotes for use cases even remotely resembling academic organization. Thing is, it's free. Can't really complain, can you?