<![CDATA[Changelog]]>https://ghost.org/changelog/https://ghost.org/changelog/favicon.pngChangeloghttps://ghost.org/changelog/Ghost 5.8Mon, 08 Aug 2022 19:05:55 GMT60<![CDATA[Premium previews for email newsletters]]>Encourage free members to upgrade to a paid subscription. Now, when you deliver a paid-members-only post to a someone without a subscription, they'll be able to read a free preview right in their inbox. At the end of the preview, free members will be invited to subscribe to

]]>
https://ghost.org/changelog/email-public-previews/62e6675c2443d2003d9f09d0Wed, 03 Aug 2022 13:58:11 GMTEncourage free members to upgrade to a paid subscription. Now, when you deliver a paid-members-only post to a someone without a subscription, they'll be able to read a free preview right in their inbox. At the end of the preview, free members will be invited to subscribe to continue reading.

All you need to do is insert the public preview divider line in your post to control where the free preview cut-off should be, and you're all set.

Paid members will see the full post content, while free members will only see the content above the public preview line — both in email and on the web.

💡
Pro-tip — If you're trying to encourage free members to consider upgrading to a paid subscription: Longer free previews typically have a higher conversion rate, as people usually become more invested the more they read.

Ghost(Pro) users can log in and start enjoying all of this right away! If you're a developer, self-hosting Ghost, you'll need to upgrade to the latest version to get access to everything that's new.

]]>
<![CDATA[Native search]]>We've just introduced native Search in Ghost to give your readers fast and intuitive access to find content anywhere across your publication. First, a quick overview of how this new feature works. After that, a few more details about how (and why) we built and released this feature,

]]>
https://ghost.org/changelog/search/62cbb054cc8fc9004d4f2e22Wed, 13 Jul 2022 12:42:42 GMT

We've just introduced native Search in Ghost to give your readers fast and intuitive access to find content anywhere across your publication. First, a quick overview of how this new feature works. After that, a few more details about how (and why) we built and released this feature, for those amongst you who have been around for a while and asking us to create it!


Ghost Search works out-of-the-box with any theme, and allows your readers to search across all published posts, tags and authors.

0:00
/

Adding Search to a Ghost site is easy, and can be done in two ways:

  1. Add a #/search link to your site navigation in Ghost Admin, and you'll have a clickable navigation link that opens the search interface.
    Read more in our help docs.
  2. Add a data-ghost-search attribute to any element in your theme (a 🔎 icon, perhaps?), and you'll have a clickable button to open the search interface.
    Read more in our developer docs.

Once added, people visiting your site will easily be able to find what they're looking for with a single click — or even open the search UI directly by using the Ctrl/Cmd + K keyboard shortcut!

All official Ghost themes have been updated to support Search. All Ghost(Pro) sites already have access to Search, and self-hosted users can update to the latest version using Ghost-CLI.


A Search function has been our most requested feature of-all-time, over on the Ghost forum. Everyone has been asking for it, for nearly 10 years. So, why didn't we do it sooner? For developers and technical users, here's a bit of history.

Search is one of those features where if it works well, it's fantastic, but if it works poorly — it's worse than having no search feature at all. Anyone who has used the search function in older open source content management systems will remember all too well how often you would search for an exact post title and get hundreds of results back... except for the post you were searching for.

There are entire companies with thousands of developers dedicated to doing search well, like Google, DuckDuckGo, and Algolia — so for a long time, with a product team of (until very recently) only 4 product engineers, we didn't feel we could deliver search to a high enough standard to be useful. We also didn't like the idea of every single theme having to implement a custom, inconsistent UI for search results - which is a poor experience on lots of other platforms.

The last thing we want to do is ship something half baked that people have been asking for, only to be overwhelmed with complaints about how bad it is.

A few things have changed in the last couple of years.

First, we built a Content API for Ghost which makes it easy to interact programmatically with a site's full content archive.

After that, we added custom integrations, so 3rd party services could generate their own API keys to work with Ghost content and settings.

Then, we figured out how to build embedded UI components for the front-end of Ghost, which could sit cleanly alongside any theme - eg. our Members Portal.

Eventually, all that was missing was a link to connect these different concepts together. The Ghost front-end is rendered server-side, and didn't have its own Content API key to be able to talk to the Ghost back-end. A handful of clever, well-implemented 3rd party search plugins for Ghost had popped up — but they all had the same limitation: The site owner would have to go and manually generate an API key, then edit their theme files manually, and paste in the key to get Search working. Not the best experience.

This all changed in Ghost 5.0 — as we added a default Content API key, included automatically and by default in every Ghost front-end.

Finally, the whole Ghost team got together last week for the first time in 3 years(!) for a retreat in sunny Spain, and we set out to build a simple, high-quality search function that would work across any Ghost site. That's what we're launching today.

Native search

It still comes with a few limitations, though. The search feature indexes post titles, excerpts, authors and tags - but it does not search across post content, and it can only index 10,000 posts to make sure the performance is blazing-fast. These limitations are where the difficulty of implementing a search feature goes from "relatively easy" to "oh shit".

Our plan for the next iteration of Search is to make it extensible, so the UI remains largely the same - but it will be possible to completely replace the back-end search functionality and index with something more technically sophisticated (like Algolia) for large/hungry publishers who need even more power.

For the vast majority of publishers and creators, though, the native Search implementation launched today will be everything they need.


A very special thanks to Ghost team member: Sodo.
In 2020 we acquired a very popular Ghost theme company called IVEEL, whose founder—Sodo—joined the team and immediately took over the care, maintenance and development of all our official Ghost themes. Sodo had written his own custom search feature in all IVEEL's themes before joining Ghost, and it was that code that formed the basis (and now the core) of the official Search feature in Ghost.


Thanks for your patience while we worked hard to get this right! And, of course... Search was not the only highly-requested feature that we worked on during our team retreat.

Stay tuned!

]]>
<![CDATA[Ghost 5.0]]>https://ghost.org/changelog/5/6272f3e6795a56003d6fe4a1Mon, 23 May 2022 11:22:41 GMT

We released the first prototype of Ghost on April 29th in 2013. Today, almost exactly 9 years later, we're releasing Ghost 5.0.

So what's new? Well. There's a short version and a long version, and we wrote down both so you can either save time, or go deep. Choose your own adventure.


The short version

If you just want the highlights of what the deal with 5.0 is, here's the lowdown:

  • In the last 2 major versions of Ghost we introduced (first beta, then public) memberships, premium subscriptions, and email newsletters. In Ghost 5.0 we've significantly expanded those capabilities with support for custom premium tiers, multiple newsletters, special offers, detailed audience segmenting, and expanded analytics.
  • In the last year we added (lots) more custom cards to the editor, now with native support for videos, podcasts, gifs, products, callouts, headers, and even NFTs (though that last one turned out to be pretty marmite). It's the same clean, signature Ghost editor — but now it can support much more diverse types of content.
  • We've upgraded existing themes and introduced some powerful new themes, including one particularly nice one for news sites called Headline.
  • As well as design improvements throughout admin, we also added design settings for themes as well as email newsletters right inside Ghost - so it's even easier to make quick changes without needing to touch any code.
  • Speed. Overall performance under load is up 20%+ while resource use is down 22%. Ghost was already really fast, but we've made quite a few optimisations that have continued to make things faster.
  • For developers: Ghost's production stack is now Ubuntu 20,  Node 16, MySQL8.

If you want to try any of these things (and the many more smaller improvements) go ahead and sign up for a free trial on Ghost.org and see for yourself. It's live now.

Or, if you want the long version and some of the story behind Ghost, keep reading.

Ghost 5.0
Ghost 5.0

The long version

Last month Ghost turned 9, and now feels like a good time for a little reflection on the journey so far. We've learned so much after building this thing for almost a decade, and have never been more proud of the product or the team behind it than today.

Ghost's mission from the start has been to create a focused platform for professional publishers, and that mission remains as strong as it ever has been, though the product has evolved significantly from humble beginnings.

Back in 2015, a full 7 years ago, we tried to imagine what the future might mean for "professional publishers" on the internet. Medium was as popular as it had ever been, had recently launched an iOS app, and was constantly touting big name authors who they were paying large sums of money to write on their site. We got compared to them a lot, but never shared their vision of a future where all the best writing on the internet lives under a single ubiquitous Silicon Valley brand.

So we ignored the blogging-social-network holy war, and instead focused on making a better product.

In the end, we mapped out where we thought things were headed, summarised here in the form of a (very bad) 7 year old keynote slide.

Ghost 5.0

We'd solved the top of the diagram with a modern CMS and a great editor, but so had about 10 other products with increasing popularity. We needed a bigger purpose for Ghost, and this diagram has been the map we've used to find that purpose ever since.

The "find and drive profitable action" language grates a little, in hindsight. We were looking closely at early movers in subscription publishing like Ben Thompson and Stratechery, but we also imagined that there could be companies whose publishing motivation is content marketing, or free publications like Wirecutter who might care more about affiliate revenue. "Profitable action" was the rather ugly catch-all term.

So, with our new plan in place, we started building. Sort of.

In 2015 Ghost had 3 product engineers, $36k MRR, and no other funding. There was no way to "take a big swing" or throw lots of people at the idea. We had to be content with quiet, slow, incremental, unglamorous progress.

It took us 3 years of work improving the existing product before we could afford to hire more product engineers to take on new ideas, and a further 2 years to build and launch a first beta version of memberships inside Ghost — by which point the creator economy was just starting to take off, and funded startups were starting to appear in the space.

Then, last year, after an incredible amount of work, we finally launched the first public version of the Ghost we had imagined all those years ago, designed for the full lifecycle of professional publishing. We launched and then waited to see if we'd been right about where the future of publishing was headed.

Our measure of success to decide whether or not it was worth continuing down this path was whether we could turn Ghost into a "platform" according to the Bill Gates definition:

A platform is when the economic value of everybody that uses it, exceeds the value of the company that creates it. Then it’s a platform.

We didn't have to wait long.


As of today, that number is now somewhere North of $12M ARR — and the rate at which new creators and publishers are growing on Ghost is accelerating. Fast.

Which leads us to...

Ghost 5.0

Almost all of our work since the last major release has been a sprint to keep up with overwhelming demand. Now, we don't just have new creators on Ghost, but established brands and publishers with multi-million dollar revenue streams looking to grow their businesses.

So, the focus of Ghost 5.0 has been on expanding the foundations of memberships and subscriptions to meet the needs of those publishers, and helping them build healthy, sustainable businesses around their audience. From world-famous publishers like David Sirota, to YouTubers with millions of subscribers like Ali Abdaal, to forward thinking startups like Buffer who specialise in incredible brand journalism.

Ghost 5.0

Based on the feedback we've had in the last year, we've heavily expanded Ghost to meet the needs of those publishers and make it work better for them.

Here's a rundown of what's new

  • Last year we finally made the dashboard! This year we made it much better. Now there are detailed audience analytics and insights to help you better understand how your publication is performing (with more on the way).
  • Multiple newsletters. Now you can create multiple different newsletters for a single site, and allow your members to choose which they would like to receive. You can customise the design and branding for each one, individually.
  • The publishing flow has been completely redesigned, making it easier for editors to publish or schedule content, deliver newsletters, or a combination of the two. It's both simpler and more powerful than it was before.
  • Custom tiers mean you can offer more ways for your audience to become paid subscribers, at different levels with monthly and yearly billing intervals.
  • You can also now create offers to incentivise new paid subscribers with special promotions and discounts.
  • Public preview dividers allow you to give logged-out visitors a preview of protected content, of any length you desire.
  • Advanced member filtering means you can segment your audience in lots of different ways to understand them better, and deliver newsletters to exactly the right people.
  • Bulk actions are new in the members dashboard, so you can apply labels, export, or unsubscribe groups of members with a few clicks.
Ghost 5.0
  • New design settings for email help you keep your newsletters on-brand, and swanky AF.
  • Plus, you can deliver an email without publishing content on your website. Perfect for weekly roundups, special offers, surveys, or private news.
  • You can also create invite-only communities by turning open member signups off, so only people you manually invite can join your site.
  • Free email newsletters can now contain calls-to-action to promote premium subscriptions to free members.
  • There are 12 new editor cards, including gifs, buttons, callouts, audio, video, downloadable files, products, and more.
  • Grammarly is now supported natively, so you can easily copy-edit your work as you write, right inside the Ghost editor.
  • Ghost theme developers can define their own custom design settings, so you can update the look and feel of your site right inside admin.
  • We released several brand new themes for news publishers and newsletters, including: Journal, Digest, Bulletin, and Headline.
Ghost 5.0

Developer changes

On top of all the user-facing changes, we also have some exciting updates and changes for developers who build-on and work-with Ghost:

  • We've made a brand new space for developer tutorials, to help people who are building with Ghost get up to speed. We're adding lots of new content here, from beginner level all the way through to advanced guides.
  • Members and Tiers are both out of beta, with stable APIs and expanded documentation. We'll be expanding these even further in the coming months.
  • Ghost performance has been boosted in a pretty big way. Number of reqs/sec is up 20%, with 15% less memory usage at boot, 22% less at peak, and 16% faster boot time. More features with less overhead is always nice.
  • Ghost's official production stack is now Ubuntu 20, Node 16, and MySQL 8. The big change here is the database layer. We used to support both SQLite and MySQL 5 in production, now we're all-in on MySQL 8 so we can double down on performance optimizations. Ghost stores a hell of a lot more data than it used to, and this change is really important to keep the architecture stable.
  • Footnote about other environments: Ghost can work with other operating systems, node versions, and databases (particularly those supported by Knex) - but as a small team, we only document and support one narrow stack that we know works really well. As always in open source: Contributions welcome.
  • If you're a theme developer, gscan has been updated so you can test your theme for compatibility against 5.0.
  • In Ghost 5.0 there are no longer different API versions in a single install. For the most part the API is stable with only additions and changes to newer features. Breaking changes are always made in majors. More details here.

What's next?

Well, for a start we're going to take a breather for a bit. It's been a pretty crazy few months here, and the whole team has earned some rest. After that we'll come back, take stock of all your feedback, and get back to work.

We're a team of 31 people now, spread all over the world, and Ghost's own revenue is now about $5M/year (up almost $2M from this time last year). We're still an independent, self-funded nonprofit organisation that can never be bought or sold. And, everything we do is still decentralised and open source.

Can't count how many people said "that will never work" - but we're still here.

Each year there seems to be a new hype-cycle competitor that pays wild sums of money to get people to use their product, tries to centralise creators under a proprietary iOS app, and convince everyone that their "network" is going to solve everything – but each year we stick to the same thing we've always stuck to:

Just quietly making a better product.

If that sounds like the sort of work you'd enjoy, we're actively hiring JavaScript developers to join the open source product team and help build what's next.

Ghost 5.0
The team that made 5.0 possible + Not pictured: Rish, Djordje, Bob, Simon & Emily

How to get Ghost 5.0

All new sites on Ghost(Pro) are running 5.0. You can spin up a new site in a few clicks and access all of the latest features with a 14-day free trial.

Already on Ghost(Pro)? Log into Ghost.org and click the "Update to 5.0" link your admin panel, any time. Get in touch with support if you have any trouble.

Self-hosting Ghost? Update to 5.0 using Ghost-CLI — here's the Ghost update guide. Keep in mind, this is a major version with breaking changes. Please allow some extra time and make backups.


Ghost 5.0 ]]>
<![CDATA[Custom sender names for newsletters]]>In the latest release, we've added the ability to set a custom sender name for your email newsletters. Your sender name can now be set from the newsletter settings page in Ghost Admin.

This gives you full control of the sender name that appears in your subscribers inboxes,

]]>
https://ghost.org/changelog/custom-sender-name/626c24738f15a3003daf1d50Tue, 03 May 2022 15:35:27 GMTIn the latest release, we've added the ability to set a custom sender name for your email newsletters. Your sender name can now be set from the newsletter settings page in Ghost Admin.

This gives you full control of the sender name that appears in your subscribers inboxes, to help improve open rates and add a personal touch to your newsletter. Learn more about sender name best practices in this resource:

Email sender name best practices for newsletters
Find out how to set the best sender name for your newsletter and increase your open rates.
]]>
<![CDATA[Local news theme]]>We've released a brand new Ghost theme for local news publishers that is free and ready to use.

The Headline theme takes a thoughtful approach to displaying large amounts of content across various areas of coverage, and can be adapted to showcase your most popular topics.

With a

]]>
https://ghost.org/changelog/local-news-theme/623895bb13e97f003dfebebcTue, 29 Mar 2022 13:47:55 GMT

We've released a brand new Ghost theme for local news publishers that is free and ready to use.

The Headline theme takes a thoughtful approach to displaying large amounts of content across various areas of coverage, and can be adapted to showcase your most popular topics.

With a few small setting changes, Headline can be adapted to suit almost any style of news publication, so you can still make it your own.

Get started today by installing Headline on your Ghost site and taking it for a test drive.

]]>
<![CDATA[Activity feed updates]]>In the latest release, we've expanded upon the member activity events shown on the dashboard, giving you full access to all of your site's events.

The activity feed can be accessed from the dashboard, or from any individual member profile, and includes all events such as

]]>
https://ghost.org/changelog/activity-feed/6238cd7e13e97f003dfebefdMon, 21 Mar 2022 20:33:06 GMTIn the latest release, we've expanded upon the member activity events shown on the dashboard, giving you full access to all of your site's events.

The activity feed can be accessed from the dashboard, or from any individual member profile, and includes all events such as new signups, paid subscriptions, email subscription events and more.

The feed can be filtered by event type to allow you to drill down even further into your member events, and better understand how your members are interacting with your content.

]]>
<![CDATA[Membership tiers]]>Membership tiers make it possible to offer more options for your audience to become paid subscribers. Each tier can have its own price points, benefits, and content access levels.

With tiers you can:

  • Create tiers for different types of content (e.g. newsletter and podcast)
  • Offer a Bronze, Silver, and
]]>
https://ghost.org/changelog/membership-tiers/622a228966d83a004ddb955fWed, 16 Mar 2022 15:53:52 GMT

Membership tiers make it possible to offer more options for your audience to become paid subscribers. Each tier can have its own price points, benefits, and content access levels.

With tiers you can:

  • Create tiers for different types of content (e.g. newsletter and podcast)
  • Offer a Bronze, Silver, and Gold model, each with different benefits
  • Offer a high-price tier for people who want to fund your work
  • Include benefits such as access to communities, courses, ebooks and more
  • Match tiers that you already offer on other platforms such as Patreon
Membership tiers

Since we introduced the ability to offer multiple tiers as a beta feature, many publishers using Ghost have been able to grow their business and revenue.

Today, we're bringing tiers in Ghost to the forefront as the feature comes out of beta, with several improvements.

The latest updates allow you to:

  • Archive tiers that are no longer needed, and reactivate any time
  • Filter members based on their tier on the member dashboard
  • Customize description and benefits, including your free offering

Portal works out of the box with all subscription configurations, so you can offer tiers to visitors across your publication. Read more about setting up your own tiers.


Ghost(Pro) customers already have access to the latest updates. Self-hosted users can update to the latest version of Ghost to access the latest features.

]]>
<![CDATA[Member engagement filtering]]>Along with the recent addition of date-based member filtering, you can now filter your members based on their engagement with your content.

The new last seen filter updates each time a free or paid member interacts with your content, whether that is opening an email, or browsing content on your

]]>
https://ghost.org/changelog/engagement-filtering/622a221466d83a004ddb9556Mon, 14 Mar 2022 20:14:25 GMTAlong with the recent addition of date-based member filtering, you can now filter your members based on their engagement with your content.

The new last seen filter updates each time a free or paid member interacts with your content, whether that is opening an email, or browsing content on your site. This allows you to find out who your most (and least) engaged members are.

For example, you can quickly discover:

  • How many people engaged with my content today? In the past week? Past month?
  • How many paid subscribers have zero engagement over the past 30 days?
  • How many free members haven't engaged in over 60 days?

These new filtering options give you more powerful ways to manage your audience, clean your subscriber list, or create segmented campaigns with offers.

🎁
Bonus: Name and Email filters are now also available.
]]>
<![CDATA[Date-based member filtering]]>The member dashboard now has new and improved filtering options. Now it's possible to filter your members list by the date their member profile was created, the date their paid subscription started, or by their next billing date.

These new filters allow you to quickly create segments and

]]>
https://ghost.org/changelog/date-based-filtering/62227c423f9b23003de8b0d8Tue, 08 Mar 2022 15:03:22 GMTThe member dashboard now has new and improved filtering options. Now it's possible to filter your members list by the date their member profile was created, the date their paid subscription started, or by their next billing date.

These new filters allow you to quickly create segments and better understand your subscribers. For example, you can discover:

  • How many new members were created in the past 30 days?
  • How many new paid subscribers have I got since [date]?
  • How many paid subscribers renew in the next 14 days?
]]>
<![CDATA[Header cards]]>Make a statement with bold section headers in your posts and pages.

MADE YOU LOOK

Insert a header card to add a full width divider that can include a title, subheading, accent color or image background, and a button. Now you can create visual section dividers, or add a big

]]>
https://ghost.org/changelog/headers/61bc922d02ad27003b15c8fdFri, 17 Dec 2021 15:25:10 GMTMake a statement with bold section headers in your posts and pages.

MADE YOU LOOK

Insert a header card to add a full width divider that can include a title, subheading, accent color or image background, and a button. Now you can create visual section dividers, or add a big call to action:

Media uploads, toggles, products, GIFs and more...

See all 12 days of Cardmas
]]>
<![CDATA[File uploads]]>Following audio and video cards, now you can add downloadable files to your posts in Ghost. File uploads can be used to share multiple types of content with your audience, for example:

  • Share bonus downloadable content with paid members
  • Include swipe files or templates for your readers to download
  • Give
]]>
https://ghost.org/changelog/file-uploads/61ba1b6f81afb4003a2ff2ffThu, 16 Dec 2021 13:53:24 GMTFollowing audio and video cards, now you can add downloadable files to your posts in Ghost. File uploads can be used to share multiple types of content with your audience, for example:

  • Share bonus downloadable content with paid members
  • Include swipe files or templates for your readers to download
  • Give out photography or videography presets/filters
  • Grow your audience with a lead magnet
  • Give members access to download an ebook you've created

Files display in your content with a custom name and caption, like this:

And that's all there is to it!

🖇️
File upload cards support files of up to 50mb depending on your Ghost(Pro) plan, and accept any filetype.
]]>
<![CDATA[Video cards]]>As a follow up from audio cards, you can now upload videos to your content in Ghost. Once uploaded, your video content renders in a beautiful video player:

0:00
/

Now you can share bonus video content for paid members, screenshares, demos, or clips from a full length

]]>
https://ghost.org/changelog/video-cards/61b8cd229afd63003b990874Wed, 15 Dec 2021 16:28:34 GMTAs a follow up from audio cards, you can now upload videos to your content in Ghost. Once uploaded, your video content renders in a beautiful video player:

0:00
/

Now you can share bonus video content for paid members, screenshares, demos, or clips from a full length feature.

Videos can be set to loop, have their own custom thumbnails, and display in three different widths using the editor toolbar.

0:00
/
🎬
Video cards support files of up to 50mb depending on your Ghost(Pro) plan, and accept .mp4, WebM, and .ogg filetypes.
]]>
<![CDATA[Audio cards]]>It's now possible to upload audio files directly to your posts!

This means you can share audio content with your audience, with a beautiful media player that nests into your posts and emails seamlessly.

audio-thumbnail
Jingle Bells — 2021 Cardmas Edition
0:00
/2:32

Now you

]]>
https://ghost.org/changelog/audio-cards/61b8b5e59afd63003b9907ceTue, 14 Dec 2021 16:40:35 GMTIt's now possible to upload audio files directly to your posts!

This means you can share audio content with your audience, with a beautiful media player that nests into your posts and emails seamlessly.

audio-thumbnail
Jingle Bells — 2021 Cardmas Edition
0:00
/2:32

Now you can share bonus content for paid members, interviews, clips from a podcast, or music.

🎧
Audio cards support files of up to 50mb depending on your Ghost(Pro) plan, and accepts .mp3, .wav, and .ogg filetypes.
]]>
<![CDATA[Product cards]]>Display products beautifully with custom content including an image, description, button or rating, so you can add your favorite recommendations to any post...

Russell's Reserve – 6yr Rye

This rye is hot at first and then settles into a nice, soft finish. Vanilla, caramel, and that classic rye

]]>
https://ghost.org/changelog/product-cards/61b76f8b7c1b300048292f30Mon, 13 Dec 2021 19:57:59 GMTDisplay products beautifully with custom content including an image, description, button or rating, so you can add your favorite recommendations to any post...

Russell's Reserve – 6yr Rye

This rye is hot at first and then settles into a nice, soft finish. Vanilla, caramel, and that classic rye spice at the end.

$64.99 on Bevmo

Showcase your best recipes...

Mushroom Risotto

It takes a little time, but this risotto recipe is worth it!

Ingredients:

  • 1.25L (5 cups) water
  • 2 vegetable or chicken stock cubes, crumbled
  • 1 tbsp olive oil
  • 1 onion, finely chopped
  • 1 tbsp fresh rosemary leaves, chopped
  • 200g button mushrooms
  • 100g brown mushrooms
  • 330g (1 1/2 cups) arborio rice
  • 1 tbsp fresh lemon juice
  • 40g (1/2 cup) shredded parmesan

Directions:

  1. Bring water and stock cubes to the boil in a saucepan over medium heat, then reduce heat to low.
  2. Heat the oil in a large saucepan over medium heat. Add the onion and cook, stirring, for 2 minutes or until soft. Add the rosemary and combined mushroom, and cook, stirring, for 3 minutes or until the mushroom is soft.
  3. Add the rice and cook, stirring, for 1 minute or until the grains appear glassy. Add a ladleful (about 125ml/1/2 cup) of the simmering stock to the rice mixture and stir with a wooden spoon until the liquid is absorbed. Add the stock, a ladleful at a time, stirring constantly and allowing liquid to be absorbed before adding the next ladleful. Continue for 25 minutes or until rice is just tender and risotto is creamy.
  4. Stir in the lemon juice, and half the parmesan and half the parsley. Top with remaining parmesan and remaining parsley.

Or highlight a great location:

Soggy Dollar Beach Bar

A sunny place for shady people on Jost Van Dyke's White Bay in the British Virgin Islands. Try the Painkiller.

See more →

See all the the latest features in the Ghost editor → 12 days of Cardmas.

]]>
<![CDATA[Twitter embeds]]>Embeds are rich content from other services that bring dynamic flavour to any blog post, and one of the most common embeds that publishers use is content from Twitter. In the browser this has always worked great, but in email clients are a whole different can of worms, and so

]]>
https://ghost.org/changelog/twitter-embeds/61b104377c1b300048292e99Thu, 09 Dec 2021 14:58:24 GMTEmbeds are rich content from other services that bring dynamic flavour to any blog post, and one of the most common embeds that publishers use is content from Twitter. In the browser this has always worked great, but in email clients are a whole different can of worms, and so until now any Tweets shared in an email newsletter would only appear as a basic blockquote. No colours. No fancy styles.

That changes today.

Now, Tweets in newsletters are automatically rendered to look how you would expect; both on the web as well as in email clients.

]]>