Kathy Sierra wrote that the goal isn’t to make users think your product is awesome — it’s to make users awesome.
Five weeks into building FolderPress, that idea reframed everything.
A writer saves a markdown file. They didn’t do anything extra. They didn’t configure anything, install anything, or visit a dashboard. But when someone loads the page: the typography is professional. Straight quotes became curly quotes. Hyphens became em dashes. Three dots became proper ellipses. The URLs are clean. The meta tags are correct. The RSS feed includes the post. The page loads fast.
The writer looks good. They didn’t think about any of it.
Typography is a quality signal below conscious awareness. Readers can’t articulate why one blog looks polished and another looks amateur — but they feel it. Curly quotes and proper em dashes are part of that feeling. So is consistent heading hierarchy, correct whitespace, and syntax-aware rendering.
FolderPress runs the smartypants transform on every post — a pattern that’s existed since 2003. The writer types "hello" with straight quotes. The published version renders “hello” with proper curly quotes. They type -- and get an em dash. They type ... and get an ellipsis. GitHub Flavored Markdown handles tables, task lists, strikethrough, autolinks.
None of this is configurable because none of it should be. The right typographic marks are always the right typographic marks. Everything renders server-side. No JavaScript shipped.
The bar for FolderPress isn’t “great features.” It’s: the person using it produces better output than they could alone, without noticing the tool exists.
A clean URL structure they didn’t design. An OG image they didn’t create. An RSS feed they didn’t configure. A newsletter they didn’t schedule. Professional typography they didn’t specify. Each one is small. Together, they’re the difference between a markdown file and a publication.
Their content, their domain, their audience. I make the plumbing invisible.
FolderPress started as an idea five weeks ago. Today: Dropbox sync with rename handling across webhook batches. Draft support and URL routing from the filesystem. Custom domains with automatic SSL. RSS feeds, sitemaps, 301 redirects on rename. Multi-site support.
The core promise works: save a markdown file to Dropbox, it’s a page on your site.