The Custom Markdown Parser: No Blue Links

When you build a microblogging platform, you inherit decades of web conventions. Blue, underlined hyperlinks are so foundational that most of us don't even question them anymore. But at Jottings, I decided to break that convention—not out of stubbornness, but because it fundamentally changed how our sites feel to read.

This is the story of why we built a custom markdown parser, and why the "no blue links" decision is actually about creating a more cohesive reading experience.

The Conventional Problem

Every markdown parser in the wild produces the same output: blue, underlined links. It's a visual pattern so embedded in web culture that browsers ship with it as the default. And yes, it works. Users understand blue = clickable. But there's a cost to this ubiquity.

When you're writing something personal—a blog, a collection of thoughts, a digital garden—those blue links feel like they're breaking the visual rhythm. They interrupt the flow of your prose. They shout "click me!" when you just wanted to casually reference something.

More pragmatically, blue links create visual noise. Your site becomes less about the content and more about competing interactive elements. Every link becomes a call-to-action, whether you intended it to be or not.

I've spent years building products and reading about design, and I kept coming back to one observation: the best designed spaces don't fight their own conventions. They respect them, then thoughtfully choose to differ where it matters.

For Jottings, I believed that mattered here.

Building from Scratch

Rather than force a convention into our markdown renderer, we built our own. The decision came early in Jottings' development—there were enough other things to handle that adding a custom parser felt like scope creep. But then it hit me: this small design decision could become part of our identity.

The custom parser we built supports all the standard markdown features: headings, code blocks, inline code, blockquotes, lists, and of course, links. But links are different. Instead of that familiar blue underline, Jottings renders links in a secondary text color with bold weight.

Here's what that means in practice: if your site's secondary text is a neutral gray, links appear as bold gray. They're still clearly interactive—the bold weight draws the eye—but they don't shatter your visual hierarchy. They sit comfortably within your content instead of fighting it.

Why This Actually Matters

I want to be honest: this isn't purely aesthetic. The "no blue links" decision connects to something deeper about what Jottings is for.

When someone reads your microblog, they're not scrolling for engagement metrics or hunting for the next click. They're reading you. Your thoughts, your words, your perspective. The medium should get out of the way.

Blue links inherently pull attention toward external destinations. They say "leave this page." For a microblogging platform, that's sometimes the right message—you absolutely want to link to sources and references. But you don't want every link to be a trap door. You want it to feel like a footnote, not an escape hatch.

The secondary color approach gives links context. They're acknowledged as interactive elements, but they're not prioritized over your own voice. It's a subtle shift, but subtle is exactly the point.

The Technical Side

Technically, our parser does the heavy lifting so your site doesn't have to. It handles:

  • Plain URLs: Type a full URL and it auto-links without requiring markdown syntax
  • Explicit markdown links: Use [text](url) like always, but we render them differently
  • Code blocks: Properly escaped HTML special characters for security
  • XSS protection: Everything is sanitized, because trust is earned through security
  • Line breaks and formatting: Respects your intentional spacing and structure

The parser is also future-proof in a way that matters for a platform. When you use Jottings, your markdown is stored as raw text—not pre-rendered HTML. That means we can update how we render links, improve formatting, add new features—all without breaking your existing content.

The Practical Effect

If you've spent time on Jottings or seen a site built with our platform, you probably noticed the reading experience feels different. Cleaner. More intentional. Less like a website trying to sell you something, more like a person sharing an idea.

That's not an accident. It's the compounding effect of small design decisions: no blue links, generous whitespace, a fixed-width container, system fonts. Each choice removes friction, removes noise, removes anything that isn't essential to communication.

Writers—whether they're sharing daily thoughts or archiving years of work—deserve tools that don't get in the way. The custom markdown parser is our contribution to that philosophy.

Looking Forward

As Jottings evolves, we're thinking about how to extend this approach. What if markdown itself became more flexible? What if you could customize how links render on your site? What if the parser adapted to your personal preferences?

These are still early ideas. But they stem from the same principle: the technology should serve your voice, not the other way around.

If you've ever felt like a blogging platform was shouting at your readers instead of letting you speak to them, that's what we're building Jottings to fix.

Give it a try. Create a site, write something, and see how it feels to read your words in a space that's designed to support your voice, not interrupt it.