- 100% free and open source, built on Node.js
- Completely decentralized — you own everything
- Inline editing with optional distraction-free Zen Mode
- Automatic responsive images ✨
- Custom Themes via Dust.js (similar to Twig and Handlebars)
- Tag posts to keep thing organized
- Manage uploads with an integrated file manager
- Out of the box support for OpenGraph, Twitter Cards, and JSON-LD
- Multi-user ready with owner, admin, editor, and contributor roles
- Post history and ability to preview and restore any version
- oEmbed support with Embed Card fallback
- Automatic sitemaps
- Spotlight-style search
- Fast, built-in search
- Quick post for micro blogging and adding ideas on the go
- Localization (feel free to contribute a translation)
- Simple backups including all data, themes, and uploads
Postleaf treats posts as first-class citizens, but it's more than just a blogging platform. For example, any post can be turned into a page with a simple checkbox. The editing experience is exactly the same.
This makes Postleaf flexible enough to power your next blog and your next website.
You can even add any number of custom post templates to your theme. These can be used to create different layouts for posts. For example, a featured video post, a micro blog post, or a contact page. The possibilities are endless.
Postleaf is the first open source platform to bring true WYSIWYG editing to the mainstream. As you type, your post looks exactly like it will when it goes live. This is called inline editing.
While inline editing is pretty amazing, some users prefer to write without distractions. For them, Postleaf features Zen Mode, a minimal view of your content and nothing else. Zen mode comes in day and night modes.
The editor produces clean, semantic markup. Since styles are defined by your theme, content will always look like the designer intended it to. No more arbitrary fonts, sizes, and colors. This also encourages writers to focus more on content instead of style.
Third-party widgets can be embedded with ease. YouTube videos, Google Maps, Instagram photos, and more. For websites that offer oEmbed, content can be inserted by simply pasting a URL into the editor.
Postleaf automatically generates meta data for you out of the box. OpenGraph, Twitter Cards, and JSON-LD are all supported. You can even customize each post's metadata if you want to.
What this means is that people who link to your website on Facebook, Twitter, and other sites will see a nicely curated preview of your content instead of just a link.
Integrated File Manager
Postleaf has a beautifully simple file manager. You can access it from anywhere in the admin panel by pressing CMD+SHIFT+U ("uploads").
The file manager supports drag and drop uploads, multi-select, deleting, and downloading. You can also search for files and see previews of images.
Postleaf takes a different approach to responsive images. Unlike some platforms that generate multiple versions of the same image, Postleaf only retains the original image. Different sizes and variations will generated and cached on-the-fly.
One reason Postleaf uses this approach is that it significantly reduces the size of backup files since all those variations don't need to be stored.
Another reason is that Postleaf generates responsive images automatically. For example, when someone uploads a 10 megapixel image, visitors on mobile devices won't have to wait forever for it to load. Postleaf intelligently serves an optimized version of the image based on the user's device.
Theme designers can also tap into this feature. Using Dynamic Images, you can apply an array of effects (resize, crop, rotate, colorize, blur, etc.) to cover photos, avatars, and more. Learn more about Dynamic Images.
Postleaf themes are built with Dust.js, a powerful templating language that works great with Node.js apps. If you're familiar with Handlebars, Twig, and similar templating languages, getting started with Dust.js will be a breeze.
Postleaf ships with all the core Dust.js helpers and a number of its own. You can easily fetch posts, authors, tags, related posts, etc. from any template. You can even display things such as smart excerpts, estimated reading times, and post counts.
Organize your posts with tags. Tags are a great way to group posts and give visitors a way to browse for related content.
Each tag can be customized, including name, description, image, and metadata.
Users & Roles
Postleaf supports four user roles: owner, administrator, editor, and contributor. Using these four roles, you can create an effective content management workflow.
Owners and admins can do pretty much everything. Editors can modify anyone's posts, manage tags, and manage uploads. Contributors can create posts but can't publish them, and they can only see and manage their own content.
Postleaf ships with a Quick Post feature that let's you post your thoughts or an idea instantly. Bookmark the page on your phone and create a draft while you're out in the field.
Or open Quick Post to save a great blog post idea for later.
Search for posts, tags, authors, and more by pressing CMD+SHIFT+F or selecting Search from the menu. Navigate to the appropriate page using the arrow keys. It's the fastest way to get around the admin panel.
Postleaf creates a new revision every time you save a post, so you can always go back and see what previous versions looked like. Don't need history for a specific post? No problem. You can delete revisions too.
Postleaf supports i18n and can be translated to any language. Just start with the default language pack and submit a PR on GitHub.
You can also submit corrections for any language pack if you find a mistake.
Postleaf can export your data, themes, and uploads into a single zip file. Rather than complex SQL dumps or convoluted XML files, all your data gets stored in clean, easy to understand JSON files.
And while I hope you never feel the need to use anything else, this means you can easily export your content out of Postleaf and into other platforms.
I know what you're thinking: "How can I get this masterpiece?"
I'm glad you asked. You can try a demo here, or grab the source on GitHub. If you want to install it yourself, I've created a tutorial for doing so on DigitalOcean.
While you're here, don't forget to follow @postleafapp on Twitter. If you need help or just want to say "hi," head over to the community chat.