Sign in

John O'Nolan

@johnonolan.bsky.social
11K followers 458 following 269 posts

Founder/CEO at @Ghost.org - Geographically restless. Mostly posting about publishing, media, open source, JavaScript, Laravel, bootstrapping, SaaS, activitypub, and design.

PostsRepliesMedia
John O'Nolan @johnonolan.bsky.social · 16/09/2026
Some major bugs with MacOS 27 <> Arc Browser 😑 windows seems to just constantly resize at random Wonder if this will even get fixed or if it will finally be the thing that forces me to switch to something else
230
John O'Nolan @johnonolan.bsky.social · 16/06/2026
Just found my first sketches from 2017(!) imagining what Ghost might look like with memberships built in This was several years before anything like it existed in the publishing world We were only a team of ~7 people at the time, so it took us a while to get there, but the idea was the right one
4283
John O'Nolan @johnonolan.bsky.social · 05/06/2026
In Amsterdam for PublicSpaces conf ✌️ say hi if you’re around
060
John O'Nolan @johnonolan.bsky.social · 22/05/2026
Messing with a floating Ghost admin toolbar that sits at the bottom of your screen if you're signed in as a staff user, for quick access to edit any post/page
0130
John O'Nolan @johnonolan.bsky.social · 11/05/2026
experimenting with a media library for @ghost.org (WIP)
5211
John O'Nolan @johnonolan.bsky.social · 29/04/2026
On this day, 13y ago, @ghost.org started as an idea on kickstarter 5,000+ people backed the project to help bring it to life and support the future of media and journalism Today, Ghost has generated over $150M for independent publishers all over the world www.kickstarter.com/projects/joh...
kickstarter.com
Ghost: Just a Blogging Platform
An open source blogging platform which makes writing pleasurable and publishing simple.
1223
John O'Nolan @johnonolan.bsky.social · 29/04/2026
Lots of publishing platforms claim to be independent and open. Ghost actually is. 🪷
0201
John O'Nolan @johnonolan.bsky.social · 29/04/2026
In SF for Stripe Sessions again this year - say hi if you’re around!
000
John O'Nolan @johnonolan.bsky.social · 15/04/2026
Experimenting with some AI-assisted features in @Ghost for helping with generated structured data and site administration Kinda fun. Not sure what the UI should be. Don't really want to have to click a button, would be even better if it just happened in the background
240
Reposted by John O'Nolan
Ghost @ghost.org · 26/03/2026
🚀 NEW: Podcasting is one of the most popular ways publishers share their work — and now you can run members-only podcasts on Ghost, with our brand new @transistor.fm integration Quality writing 🤝 Quality audio ghost.org/changelog/tr...
1459
John O'Nolan @johnonolan.bsky.social · 05/03/2026
Only realised after posting: Time from $9M→$10M ARR was 14 weeks Which is especially wild when you consider the first $1M ARR took 5 years 😅
1360
John O'Nolan @johnonolan.bsky.social · 04/03/2026
Today @ghost.org crossed $10M ARR, as a bootstrapped non-profit foundation building open source software. Indie publisher revenue earned with Ghost now ~$130M, and accelerating.
1517829
Reposted by John O'Nolan
Flowian @flowian.bsky.social · 27/02/2026
We've all heard "SaaS is dead" enough times. Recently I read multiple people developing something more specific: Nicolas Bustamante from the software side, Ben Thompson from the hardware side, @johnonolan.bsky.social about open source. Different starting points. Same direction.
131
John O'Nolan @johnonolan.bsky.social · 26/02/2026
This week Cloudflare shamelessly cloned and released the product of one of their primary competitors. I'm beginning to wonder - if AI can rewrite software from scratch, without using any of the original code, do software licenses actually mean anything anymore? john.onolan.org/open-source-...
587
John O'Nolan @johnonolan.bsky.social · 24/02/2026
Goin' live with the Laravel team here in a couple mins 🔊 $PHP
020
John O'Nolan @johnonolan.bsky.social · 14/01/2026
I've seen some of what Aaron's working on here, and it's so far ahead of anything I've managed to figure out for myself. (I told him to price this 10x higher but he refused listen to me, so it's your lucky day.)
2131
John O'Nolan @johnonolan.bsky.social · 07/01/2026
one thing I didn't expect while building alcove.news is the unbridled joy of removing newsletters from my email inbox feels *so* much better having communication/reading in two different places (you can follow @alcove.blog.alcove.news.ap.brid.gy if you want updates on progress)
alcove.news
Alcove - A peaceful RSS Reader
A quiet place to see what's new
2201
John O'Nolan @johnonolan.bsky.social · 18/12/2025
Back on GPT 5.2 Max fulltime now, Claude 4.5 has been nerfed so hard it's actually unusable this week
450
John O'Nolan @johnonolan.bsky.social · 05/12/2025
I've decided to pursue a very bad idea and see where it goes. I'm making an RSS reader. john.onolan.org/making-an-rs...
john.onolan.org
I'm making an RSS reader
Why am I making an RSS reader? I don't know. There are a thousand RSS readers out there already, and they all read RSS feeds, but none of them work the way I'd like them to. So I'm making my own. It'...
4447
Reposted by John O'Nolan
Ghost @ghost.org · 28/11/2025
Our first billboard! Live from Stripe City bfcm.stripe.com
1283
John O'Nolan @johnonolan.bsky.social · 26/11/2025
If you're curious about the build of Ghost Explore — and some of the details of my ... *checks notes* ... 1,256 commits on this project over the past few months The @laravelphp.bsky.social team just published a nice lil piece about Ghost + Laravel Cloud: laravel.com/blog/14m-req...
1133
John O'Nolan @johnonolan.bsky.social · 26/11/2025
Stoked to share some of the details behind a project I've been working on for a long time, in partnership with @ahrefs.bsky.social — and built on top of @laravelphp.bsky.social Spent YEARS wanting this to exist, so I finally just built it.
1252
John O'Nolan @johnonolan.bsky.social · 25/11/2025
1140
Reposted by John O'Nolan
Stef Walter @stephaniewalter.bsky.social · 25/11/2025
Okay, this is fun, and brings me back to some neumorphism nostalgia: a fun color palette generator, that lets you play with different color spaces, and build different palettes type colorpalette.pro/?color=lab%2...
Screenshot of a color palette tool showing a palette called Lightning Bug with color sliders, LAB values, color grid, and palette type controls like complementary and triadic, in some old school neumorphic  gray buttons style
2408
John O'Nolan @johnonolan.bsky.social · 24/11/2025
Today @ghost.org passed $9M ARR — the first time we've ever crossed a $1M milestone 2x in a calendar year 🎉 Publisher revenue is growing even faster! Now more than $120M GMV earned by writers and journalists using the product to fund their work
3745
Reposted by John O'Nolan
Mostly Technical Podcast @mostlytechnical.com · 20/11/2025
This week @johnonolan.bsky.social joined us for a Sweet Hang and he's got big news for @ianlandsman.com & @aaronfrancis.com: This week he Laravel New'd....twice! 🚀
1102
John O'Nolan @johnonolan.bsky.social · 19/11/2025
development DB dropped again me: what did you do ai: nothing guv, swear down, I ain't touched it, if anything happened to the DB it wasn't cause of me
170
John O'Nolan @johnonolan.bsky.social · 30/10/2025
After 3 months - counting by number of servers (unique domains) - @ghost.org is now the most-deployed piece of ActivityPub software out there 31% of all sites that interop with open social web standards are running on Ghost
57710
John O'Nolan @johnonolan.bsky.social · 29/10/2025
Doing ~12M req/mo now on my laravel app - which powers explore.ghost.org (the public front end is very simple, the back end is much more extensive) Still blows my mind how much you can build/manage singlehandedly with a bit of help from Claude and Laravel Cloud
1170
John O'Nolan @johnonolan.bsky.social · 15/10/2025
I'm always impressed by just how many people who've never maintained any open source software are so wonderfully generous with their advice about how to do it correctly
6813
John O'Nolan @johnonolan.bsky.social · 10/10/2025
Had an amazing time this week speaking at PenpotFest in Madrid - there’s a lot of inspiring work happening in open source design tools these days that gives me a lot of optimism for the future Thanks for having me @penpot.app 🫶
181
John O'Nolan @johnonolan.bsky.social · 03/10/2025
@rmccue.io You were workin' as a waitress in a cocktail bar
120
John O'Nolan @johnonolan.bsky.social · 30/09/2025
it’s amazing (not in a good way) how many books these days are just lengthy accounts of every guest the author has had on their podcast and what each of them said
0100
John O'Nolan @johnonolan.bsky.social · 10/09/2025
Aggregate publisher revenue on @ghost.org is currently growing at ~$1M ARR per *week* The business of independent publishing and journalism is looking in better shape than it has in a very long time
1518
John O'Nolan @johnonolan.bsky.social · 10/09/2025
A blog post is a very long and complex search query to find fascinating people and make them route interesting stuff to your inbox www.lesswrong.com/posts/vidXh2...
lesswrong.com
A blog post is a very long and complex search query to find fascinating people and make them route interesting stuff to your inbox — LessWrong
I was born in July 1989, which means I am of the last generation who will remember the time before the internet. The cables and data centers and hype…
192
John O'Nolan @johnonolan.bsky.social · 09/09/2025
Ah I see! It’s not a 12MP crop of a 48MP sensor, it’s a pro fusion telephoto liquid XDR Dynamic Island camera system ultra
3140
John O'Nolan @johnonolan.bsky.social · 08/09/2025
One of the easiest ways to spot an AI generated reply, other than em dashes, is the endless use of the phrase: "This isn't [trivial, insignificant thing], it's [important, considered thing]." Stands out like a sore thumb.
030
John O'Nolan @johnonolan.bsky.social · 08/09/2025
I took a couple weeks off, can someone catch me up on the 4years of AI news that happened while I was away? So far I've gathered that we all hate Claude now
260
John O'Nolan @johnonolan.bsky.social · 19/08/2025
Another story hidden between the lines of this one: Publishers on Ghost are earning (multiples) more revenue compared to some other platforms that are endlessly shilling their "game changer growth hacking features" Quality content > Growth hacking
1254
John O'Nolan @johnonolan.bsky.social · 18/08/2025
We've now generated over $136M from free, open source software with @ghost.org 📈 $36M in revenue from managed hosting $100M in platform revenue for indie publishers The ecosystem is growing really quickly at this point, and really excited about where things are heading next:
4978
John O'Nolan @johnonolan.bsky.social · 17/08/2025
When writing was first invented, it was critiqued as likely to create the “illusion of wisdom” - because people would no longer bother to memorize knowledge. What happens when we invent tools? We adapt, and we evolve.
071
John O'Nolan @johnonolan.bsky.social · 13/08/2025
Single most annoying thing to me about Claude Code is that it consistently does "what it believes you meant, based on what you said" rather than "what you said" Apparently this is a deliberate/intentional feature - but really wish there was a way to disable
380
John O'Nolan @johnonolan.bsky.social · 13/08/2025
my kingdom for a flight booking MCP so I never have to touch an airline website again
3100
Reposted by John O'Nolan
nilay patel @reckless.bsky.social · 04/08/2025
this is the future www.theverge.com/news/718286/...
theverge.com
One of the biggest newsletter platforms now syndicates to Bluesky and Mastodon
Ghost 6.0 adds social web-focused features.
719741
John O'Nolan @johnonolan.bsky.social · 04/08/2025
Ghost 6.0 has arrived! An enormous amount of work went into delivering our biggest upgrade yet: 🔥 Networked publishing with ActivityPub 📈 Deeply integrated native analytics 🛠️ Thousands of upgrades and improvements 💸 $100,000,000 earned by indie publishers ghost.org/6/
67927
Reposted by John O'Nolan
Ghost @ghost.org · 03/08/2025
7588
John O'Nolan @johnonolan.bsky.social · 25/07/2025
2.3b tokens for $200 is prob the best money I’ve ever spent tbh
2100
Reposted by John O'Nolan
Molly White @molly.wiki · 11/04/2025
Yep. I saved hundreds or even thousands of dollars a month just from switching from Substack to self-hosted Ghost. I pay a roughly flat $85/month now (~$75 for mailsending, $10 for hosting), vs. 10% of all my subscription income.
digiday.com
Former Substack creators say they’re earning more on new platforms that offer larger shares of subscription revenue
Former Substack writers who exited the platform in early 2024 are making more money on Beehiiv and Ghost thanks to their fixed pricing models.
351993523
John O'Nolan @johnonolan.bsky.social · 03/07/2025
nobody: logitech: what if your mouse had ChatGPT
6413
John O'Nolan @johnonolan.bsky.social · 02/07/2025
If you want 50% off chatgpt plus, just click cancel
4200