Mental Pivot

Notes and observations from a lifelong pursuit of learning.

Insights and interesting reads delivered straight to your inbox.
Sign up for the free Mental Pivot Newsletter.

Bear App: A Solid Zettelkasten Solution for iOS Users

I’ve used The Archive for the past three years to maintain my zettelkasten (notes archive). It’s a well-designed app with a specific feature-set optimized for the zettelkasten note-taking system. Unfortunately, The Archive is only available for MacOS. I recently purchased an iPad Pro with a Magic Keyboard to see if it could replace my MacBook Pro for my note-taking tasks. With that in mind I tested out three iOS markdown editors: 1Writer, Bear, and iA Writer.

After working with all three, I’ve concluded that Bear App is the best current solution for maintaining a zettelkasten in iOS. If you're a fan of The Archive, I think you'll be pleased to know that you can mostly replicate the experience on an iPad with Bear.

If you want to learn more about the zettelkasten note-taking system, see my article Zettelkasten 101: A Reading List for Beginners.

App Criteria

My requirements for an iOS-based zettelkasten solution (in no particular order):

  • Native app (no web browser tools, sorry Roam).
  • Markdown support.
  • Tag support (for thematic clustering and keyword retrieval).
  • Full-text search (for retrieval/recall).
  • Wiki-style links for cross-referencing (bi-directional links or back links are a big bonus).
  • Seamless cloud syncing.
  • Automation/app extensibility via some combination of URL actions, scripting, APIs.
  • Plain text file storage: Durability and portability of the archive is key. Plaintext files are app-agnostic and as “future-proof” as digital files can be.
  • App is under active development (no abandonware, please).

Bear: The Good

The Bear website describes the app as “a beautiful, flexible writing app for crafting notes and prose.” The marketing copy doesn’t lie: for those who enjoy pleasing user-interfaces and a distraction-free writing canvas, Bear delivers.

Zettelkasten practitioners who use The Archive should feel at home with Bear’s interface. Like The Archive, Bear offers a navigational pane (the notes list) that lets you scan through your individual notes by scrolling through the list. One detail that Bear does better than The Archive (and 1Writer and iA Writer) is that note titles in the notes list are text-wrapped rather than truncated. This makes scanning your archive of notes much easier if you use longer note titles (over 40 characters).

Creating a new note for your zettelkasten is trivial once you’ve taken the necessary steps to automate this process, I wrote a detailed blog post on this topic with step-by-step instructions on how to accomplish this (see: “Automating Zettelkasten Note Creation on iOS”). Once you’ve setup your Bear Shortcut and your Apple System text replacements, note creation becomes quick and painless.

Tag support in Bear is solid. Tags are browsable in the application’s “Sidebar” navigation or via the app’s search feature. Tags can also be nested which offers some additional levels of granularity if you want to impose a hierarchical structure. When adding a tag to a note, Bear offers a live search box that presents a list of existing tags which is a nice touch. Full-text search is also fast and robust. Bear offers a number of advanced search options as well.

Bear supports wiki-links which are my preferred way of creating links between notes (The Archive supports this feature). For wiki-link creation, Bear offers live search which greatly aids link creation. To make use of this feature, you start the link by typing the string of the note title you wish to link to. Bear’s live search will populate with title matches that you can scroll through and select. Alternatively, you can just copy the note title of the note you’d like to create a wiki-link for. Here’s more info on the topic. Moreover, the wiki-links are not brittle (owing to Bear’s use of a SQLite database for your notes—more on this in the section “The Bad” below). Should you change the title of a note, your wiki-links will not break, and, in fact, will be updated automatically.

I don’t make extensive use of images in my zettelkasten, but for those who wish The Archive supported embedded images, Bear supports file attachments for your notes. You can attach any file type to your note (for instance, you can attach a PDF to your note). In addition, the iOS version of Bear lets you add sketches to your notes. Bear’s drawing capabilities are rudimentary, but it can come in handy if you need to create a quick diagram for your notes.

Bear’s export functionality is robust; this should ease any (warranted) concerns about data portability and app lock-in. Bear lets you export individual notes, groups of notes by tag, and even the entire repository. Supported export formats include plain text, Markdown, text bundle, PDF, RTF, HTML, ePub, DocX, and more. Attachments are also exportable. If you export the entire repository as plain text, you’ll end up with a directory of individual text files for each note (where the title of the note is used as the file name) that can easily be used by The Archive, 1Writer, iA Writer or any other zettel-capable app you decide to use.

Bear: The Bad

While I’m quite pleased with Bear as an iOS zettelkasten tool, there are a few areas of concern worth noting.

The biggest objection for many zettlers is that Bear uses a proprietary database to store notes. This is a reasonable concern, but is mitigated by Bear’s flexible export feature. I concede that users wanting to work interchangeably between The Archive and iOS are better off using 1Writer or iA Writer; these three apps can share the same cloud-based plain text data directory. Naturally, The Archive cannot work with Bear’s SQLite database, you’ll need to export your Bear notes first should you want to access your notes with The Archive. On the other hand, should you plan to work primarily in Bear, this is less of an issue. Presumably one would perform a one-time import of files from The Archive’s directory into Bear and then use Bear’s database until an export is necessary.

Roam users will lament the lack of bi-directional links or, at the very least, backlinking in Bear. I agree that backlinking would be a fantastic feature for Bear. At present, the only solutions I’m aware of are scripts created by Bear users that can be used to generate backlinks for notes. As I haven’t tested any of these solutions, I cannot offer my thoughts on their effectiveness. But if you are interested in exploring the topic, here are two possible solutions: 1) A python script for adding backlinks to .md files and 2) An iOS shortcut for adding Bear backlinks.

Another potential pain point is the issue of price. Bear can be installed and used for free. However, the free versions of Bear lacks several important features: cloud syncing, advanced export options, note-encryption, and app templates. If you want to unlock these capabilities, you’ll need a paid Bear Pro account ($1.49/month or $14.99/year). On the plus side, a single subscription allows you to use the app on your iPhone, iPad and Mac (unlike other apps that require you to purchase the app for each platform). Another plus for Bear’s business model is that the app is under active development and the developers appear to be responsive to user-requested features. I find these prices to be entirely reasonable given the app’s utility, but others might object to the SaaS model on principle.

Bear Alternatives

1Writer and iA Writer are worth considering although I encountered serious shortcomings with each.

1Writer is a decent option for users who want a free, no-frills alternative to Bear. 1Writer operates with directories of plaintext files (which is perfect for users of The Archive). The app supports cloud syncing, automation via URL actions and JavaScript Actions. 1Writer supports wiki-links, but these links are brittle. If you change the name of a linked file, your existing wiki-links will break.

Browsing your notes via 1Writer’s list view is also problematic. 1Writer truncates note titles that run longer than 35 characters. The abbreviated note titles make it difficult to scan through your archive when searching for a specific note.

Another problem with 1Writer is that the full-text search and tagging functionality only works properly within the local default file folder for the app. Should you make extensive use of a cloud-based folder with 1Writer, you’ll encounter issues with tag and full-text support. For more on this topic, refer to this discussion thread on the Mac Power Users forum (including a message from the developer). Unfortunately for me, this problem a dealbreaker.

iA Writer is more robust and polished than 1Writer but requires a one-time purchase for each platform version (at time of writing the Mac version costs $29.99 and the iOS version costs $8.99, the app is also available for Android and Windows). iA Writer is similar to 1Writer in several ways. Like 1Writer, it works directly with plain text files. The app also supports cloud syncing and shortcut automation via URL actions. The full-text search is good and the app also supports tagging (with none of the problems encountered with 1Writer). I really enjoy using iA Writer but two shortcomings prevent me from recommending the app for zettelkasten use.

The first shortcoming is the subpar file browsing experience. As with 1Writer, browsing notes in iA Writer is hindered by the app’s insistence on truncating titles after a mere 22 characters. Given that many digital zettelkasten practitioners adhere to the convention of prepending a 12-character timestamp to their note titles (e.g. yyyyMMddHHmm), iA Writer’s title abbreviations offer little usable information when scanning your notes archive. The solution is to open the file editor which is slow and cumbersome. iA Writer could remedy this problem by wrapping the full title (like Bear does) or by allowing users to adjust the width of the note list window (which is possible with the MacOS version of the app).

The second shortcoming is the lack of support for wiki-links. The only option for cross-linking notes with iA Writer is to use x-callback URLs (which, to my eye, is less ideal). This is a deal-breaker for me, which is a shame since iA Writer is an otherwise wonderful writing app.

Concluding Thoughts

If you are a satisfied user of The Archive and just want an iOS app for periodic access to your notes repository, 1Writer and iA Writer are serviceable but have serious shortcomings. Choosing between these two apps is a matter of feature preference. If you want an app that is free and supports wiki-links, go with 1Writer. If you want an app that has a more robust feature-set, polished interface and better support for full-text search and tagging, pick iA Writer.

However, if you want a more robust zettelkasten tool and intend to primarily use an iPad for this purpose, I find Bear to be the most capable option. Bear’s note browser and tag support are more robust than the other two apps. Moreover, creating and maintaining intra-note references with wiki-links is much easier with Bear (owing to Bear’s live search feature and it’s SQLite database which ensures that wiki-links are maintained by a unique ID rather than the document title). Lastly, the user-experience with Bear is easily the best of the bunch (though iA Writer is not far behind). This is not a trivial detail: it’s far easier to maintain a good note-taking habit when the tools are a pleasure to use.

If you are looking to migrate your zettelkasten to iOS, the bottom-line is that there are viable apps for the task. Hopefully over the next year we’ll see new entrants along with improvements from the incumbents. And if Bear eventually offers automated backlinking, I’ll be an even happier paying customer.

If there are any apps you use to maintain a zettelkasten on iOS, do let me know.

Get weekly email updates and additional content: Sign up for the free Mental Pivot Newsletter.