Thinking about building a Markdown editor for macOS and iOS

For years, I’ve written down what I do for work every day in Day One. I wanted to include links to meeting notes and the like throughout the day, which led me down a rabbit hole towards Obsidian and Noteplan.

Obsidian isn’t native, and I don’t like it. Noteplan is good, but I don’t need the “plan” part, and there are several features I wish it supports that it does not support. Like Markdown footnotes, or better-looking type in a long numbered list, or file names.

I write my blog posts in Ulysses, and annotate Scripture there as well for my own edification.

After much thought, I’m considering learning SwiftUI and Swift so I can build a macOS and iOS app with a focus on markdown rendering and wiki-style links. It’s not just for notes and research. It would also be writing for writing.

If iA Writer and Obsidian had a baby, basically.

Is there any interest in this? Do y’all think there might be a market for this? And for those of you who code, would an app like this be too much for a first-timer to build?

There is obviously a need as you haven’t found what you need. But as I’m sure you’re aware, there are many, many services and apps which allow you to save text and many which offer markdown (although not always Multi Markdown)

So I wouldn’t embark on this for the purpose of making any money, but if it scratches your itch and meets you need. Why not!

3 Likes

I think it’d absolutely be a worthwhile learning project. I think you’d have trouble getting to a public release state for a first project—though of course I don’t know how good of a developer you are in other languages!

There is an existing app that might scratch your itch, too:

I’ve had much the same wish, not just for a markdown editor, but even more so in my case for an academic reference manager.
I agree with you on Obsidian and NotePlan.

I suspect you may be underestimating a little bit the trouble involved in writing an app from scratch. In my learning a little bit of Swift I quickly came to the conclusion that, while absolutely not rocket-science, app-building probably takes a long time for the first timer to get right. How much time do you have? Experience coders, I’m looking forward to hearing what you suggest.

More to the point perhaps, there are so many markdown editors these days that while I completely believe you that your perfect one doesn’t exist (mind doesn’t either), I suspect you can approximate the perfect one with a collection of imperfect ones.
Some names for you to check out if you’re not already familiar with them:

  1. Taio. Native on MacOS and iPadOS. Neat and scriptable. Unfortunately the dev is stubbornly against live preview of markdown, but perhaps they’ll have to change their mind if enough people ask.
  2. Nota. This is an electron app, like Obsidian, but done properly (unlike obsidian)
  3. Zettlr. Same, Electron app but better than Obsidian. Has linking, graphs and charts, and academic ref manager integration.
  4. Typora. More like iA Writer. Again, it’s an electron app but a goodie.
  5. Spaces. This is almost new to me. It looks a bit like a Ulysses clone. Like Ulysses it doesn’t let you easily control your own data, but it’s visually very pleasant. It’s on the App Store so not Electron!

I make do with Taio, Nota, Zettlr, Panda but also primarily, like you, iA Writer, Obsidian and NotePlan.
When you finish your app, I’ll be customer #1. Good news, I don’t even mind subscriptions!

1 Like

Nota is great, I use it a good deal. But it is an Electron app and it has no iOS counterpart.

1 Like

If you are thinking about creating a commercial product, here’s a wish list of features from Jason Snell. I thought it might be helpful to see what he thinks is missing from current editors.

I’ve always thought having a successful app would be like having a child. Good luck with this task, should you choose to accept it.

Y’all have been very helpful here, thanks!

I suspect this would be a large project. I have been a front-end web dev for some years now, and I can handle the basics of JS and PHP, which is a mile away from Swift, so it would take some time to learn. I’d assume this project would take a year. Maybe more.

@WayneG: Thank you for the reminder about Snell’s article. I feel his pain on many fronts. Not all of that would make my 1.0 (I don’t see the same need for Shortcuts support, at least not for 1.0). But this is a very handy reference.

@va1984: I have submitted a request to check out Nota. I have not tried Typora but could tell just from their website that it’s not what I want. Zettlr was nice, but no iOS app. It would be great if there were one app that could handle all the things, but that’s hard to come by. (Nota will have this problem too). Taio I did not like; it felt wrong on the Mac to me, and that’s where I’d use it most. And Spaces is ruled out for the same reason Ulysses doesn’t make long-term sense for this sort of data, as you point out.

As far as your question, how much time do I have? Uh… I mean, more than I’d like to state, because I’ve gotten the platinum trophy in something like 12 PlayStation games since the pandemic started, but I also run a business where I already do some front-end work, so I am busy.

My thanks to @cornchip for also pointing out nota.

And @geoffaire, exactly my struggle. I’d probably want to charge something for this. No idea how much. Ideally it’d be a fee that was enough for me to live off of if I hit 1,000 paying users. So maybe something like $5/month. And if people don’t want to pay it, I’d try to use the same data structure as something like Obsidian, so it would be backwards- and forwards-compatible.

But all of you, thank you. I’m glad to see I’m not alone in wishing something like this existed. That alone is a comfort.

1 Like

Your ideas also sound close to the abandonware project Outlinely:

You and me both, my friend. If you decide to go the open-source route feel free to message me.

I’ve been thinking about this for a while, although I’ve been leaning towards something on a more small-side-project scale that’s basically only for me and not for any monetary gain, and also not Apple-platform specific. So not a threat but maybe adjacent to your idea :slight_smile:

1 Like

I definitely don’t want an outliner! I want a super speedy native Markdown app that works with plain text files in any directory of your choice, that also supports Obsidian’s native features (wiki links, tags, etc). Importantly, I want it to work just as well for longer form thinking and writing as it does notes.

I’d be very interested in this.

One of my soapboxes is the incompatibility of a lot of “markdown” syntax – in particular extensions of the original (or of Multimarkdown) like highlighting and commenting.

Just two examples:


## highlighting
This is {==Critic Markup==}
This is ==Obsidian==
This is ::NotePlan::

## strikethrough

This is ~~Github style~~
This is {--CriticMarkup--}

Devs often pick one, for any number of (perfectly good) reasons. My complaint: picking any one partially breaks interoperability across markdown apps. And that’s one of the supposed joys of markdown – you aren’t locked into one app or sets of apps … unless you use highlighting, strikethrough, etc.

At least for all the inline styles I’ve tried, it doesn’t have to be this way. It’s possible to incorporate all the options – I’ve got a proof of concept syntax and theme in Drafts that shows how this could work. Happy to share if it’s useful.

3 Likes

The one important thing that is often missed: typewriter scrolling. Please don’t make the carat live at the bottom of the window like a cockroach.

Incidentally, this is one thing I can’t believe BBEdit haven’t resolved yet.

Also, here’s a little summary list of Markdown contenders I wrote several years ago.

4 Likes

You might want to take a look at fsnotes

I think a text editor is wayyyyyyyy beyond a first build.

2 Likes

No, I know, not the same thing. Instead of iA Writer and Obsidian, Outlinely was like if Ulysses, Obsidian, and OmniOutliner had a baby. The experience of using it felt quite like what you’re describing, plus outlining. Just thought it was another comparable data point.

1 Like

I’m not sure how many of your points it touches … but the upcoming nvUltra may certainly be worth taking a look at. They have a beta, and they say it will be released soon … but I don’t know if that’s day, weeks, or months. Developed by Brett Terpstra and Fletcher Penney (he who developed multimarkdown). You should be able to get in on the beta.

Downside: no iOS app. Not a big deal for me but perhaps for you.

1 Like

Have you taken a look at Notebooks? To the best of my knowledge, it’s a native macOS / iOS app. You can create documents in markdown, plain text, or a WYSIWYG format that is stored as html rather than rtf. It has tags and wiki / backlinking. All files are in their native format and stored on the drive of your choosing in a folder hierarchy that you create. You can house and view other document types there as well. You can sync via iCloud, Dropbox, or a WebDav server. You can convert the documents you create into variety of formats, including PDF and epub. A major update with improved linking is apparently in the works.

I use Notebooks all the time for small, short-term, self-contained projects.

ETA: It’s a fully-featured app and not as spare as, say, Nota. But it can be as plain as you want it to be if that’s your preference.

3 Likes

This is delightfully detailed, thank you! I agree this should all work as you state. I’d assume it’s just a bit of regex, but at this point, I have no idea.

Thanks for your list! Typewriter scrolling is indeed important. I’ll add it to my list too, but I’ll be honest and say it wouldn’t make my list for MVP. But it’s definitely important.

Thanks for sharing fsnotes! I’ll give it a try shortly. You might be right about text editors being beyond a first build, but I plan on doing all Apple’s Swift and SwiftUI tutorials, and probably the 100 Days of SwiftUI course too.

Plus, it’s almost guaranteed to be easier to build than my other itches: a good task manager with the beauty of things and tools of OF, or an app for freelancers that allows them to create invoices in multiple currencies, track hours, and project their income in monthly/quarterly/annual/custom views.

I thought you might mean this! Thanks for sharing it in that spirit.

I’ll believe nvUltra is actually releasing once I can finally, for real, download the thing. It feels too much like vapourware to me ow. And I’d like there to be an iOS app.

Never heard of Notebooks before but it looks amazing. I’ll try it today as well. If it scratches my itch, maybe I don’t need to build this and we can all celebrate the existence of a quality plain text app for these purposes. Thank you!

1 Like

This would be awesome. For me all I need is markdown, links, pdfs and images.

Good luck learning Swift, I’ve worked on a few iOS apps in Swift.

I’ve also coded in Java and Objective C, and it’s kind of similar but more elegant (IMHO).

I’d argue both of those are easier than a text editor. Text is inherently messy even when you think there’s rules.

Comparatively generating reports and keeping track of tasks is quite simple. But! Good luck on your journey. Do your best to have fun while you’re doing it!

This is fair — and I could imagine that text would be inherently messy. But I also imagine that the parameters surrounding the rest of the app aren’t super challenging in comparison. I don’t think I’d need a lot of functional toolbar items, for example. Text rendering is the problem, and it must be difficult, because otherwise this itch of mine would be scratched.