Why Bear is built on Markdown, and what that means

Why Bear is built on Markdown, and what that means

We are quite fortunate to have a thriving community for our fuzzy little Markdown app. Naturally, we get a lot of questions about what it can do and could do someday. We’re always working on new ideas for Bear, but not every feature will be a good fit. Here we hope to explain a bit about what is Markdown, some of the constraints it has by design, and what that means for Bear’s values and future.

What is Markdown?

Markdown is a tool to write in plain text and still have style. This includes simple stuff like bold and italics, all the way up to things like lists, tables, web links, and more. If you want to learn how to use Markdown in Bear (and elsewhere!), there’s a post for that.

Plain text is key here. It’s universal and future-proof since virtually any device can read it, and that probably won’t change unless the AI bots actually take over. Plain text is also limited in some ways, particularly in the amount and variety of formatting features it can support. Thankfully, it’s also flexible in other ways, especially when you bring Markdown to the table.

When plain text is formatted using Markdown, it can go almost anywhere on the internet. It doesn’t have the baggage or custom formatting code of other, larger apps and word processors that can often mangle or outright break how content appears when it’s sent elsewhere. Markdown is a fairly well embraced standard, and that’s important to us. 

In the rare case an app or service doesn’t directly support Markdown these days, we make it easy to export from Bear in other formats that are likely supported. If all else fails, there are plenty of free Markdown conversion utilities on the web.

What are the limits of Markdown?

Well, for starters, it’s called plain text for a reason. A big part of the idea is to keep the file format simple, which makes it much easier to keep content portable and future proof. But yes, this means there are limitations to what the format can do, and some of those are not likely to change.

For example: Bear 2 gained support for simple tables. Now, if you open a larger, more powerful app like Excel that is built entirely around tables, it can do some wild stuff—tally financials, advanced mathematical shenanigans, you can even put lists inside table cells.

Now, lists in cells sounds like a fun idea. One of our spouses works quite a bit in Excel and does this quite often. But lists in table cells are not a good fit for Bear, in large part because of our adherence to Markdown. The standard just doesn’t support lists and photos in table cells, which means that content would be incompatible with the majority of places Markdown is welcome. It becomes a conflict of interest and sheer functionality.

Why is Markdown important to Shiny Frog?

Yes, our company is technically called Shiny Frog. Hi!

We strongly believe in building tools that use open formats and avoid lock-in. Fun fact: if you export a note from Bear as a Bear note, its file extension is .bear. But if you change that extension to .textpack, an open file format, any apps that understand the TextBundle standard can open it. The Bear note format is just TextBundle renamed so those notes will open in Bear by default.

Open formats make it much easier to move your data between apps. After all, it is your data. While we would love for Bear to be around for the next 10, 20, and even 30 years, it is impossible to know the future. Open formats mean we can’t and don’t want to lock you into Bear. We hope you use Bear because you want to, not because you have to.

This is a value that Markdown shares. Its portability is a perfect fit for what we want to do, and that’s why Bear is built around it. 

Keepin’ it plain

We hope this post sheds some light on some of our values, as well as how and why we designed Bear this way. If you have thoughts or questions about any of this, please reach out on Reddit, Twitter, Facebook, or directly at bear@shinyfrog.net.