This Week's Sponsor:

Incogni

Put an End to Spam, Scams, and Robocalls on Your iPhone


Deeper on Calliope, Our New Web App for Club MacStories and AppStories

Our new web app for Club MacStories and AppStories, Calliope.

Our new web app for Club MacStories and AppStories, Calliope.

Yesterday, we unveiled the all-new Club MacStories, featuring the new Club MacStories+ and Club Premier tiers, a new web app, a Discord community, new original content for members, and more. You can read my announcement here, and sign up for (or upgrade to) the new Club MacStories plans here. We believe the best option is Club Premier, which bundles Club MacStories+ and AppStories+ in a single package at $12/month.

Today, I want to dive deeper into Calliope, our brand new web app that, for the first time, allows all Club members to read our content, including MacStories Weekly, on the web. As I highlighted in my article from yesterday, there’s a lot more Calliope can do, especially if you subscribe to Club MacStories+ or Club Premier; I want to take a closer look at its advanced features so members can properly take advantage of everything we built over the past year.

Reading ‘Newsletters’ on the Web, with Support for Sections and Authors

The first feature enabled by Calliope is, obviously, the ability to read all our newsletters and new original columns in any web browser at club.macstories.net. You can still receive both MacStories Weekly and the Monthly Log over email if you want to, but now we also offer a way to read them on the Club’s website.

This brings several advantages over receiving newsletters over email. First, we’ve imported six years of Club MacStories newsletters into Calliope, so you can click through and read old issues without having to sift through your email. Second, Calliope supports dark mode and we’ve refreshed the MacStories Weekly you know and love to look great in both light and dark appearances. Then, we built a modern, responsive web app that loads content quickly (Calliope is a static website), supports Dynamic Type for variable font sizes on iOS, and is fully compliant with Safari Reader and RSS. Mailchimp alone would have never allowed us to do any of this.

Calliope fully supports accessible text sizes on iOS and iPadOS.

Calliope fully supports accessible text sizes on iOS and iPadOS.

The reading experience on Calliope extends far beyond dark mode and visual improvements though. As I noted yesterday, Calliope is a modular publishing platform where articles can exist both as part of a bigger “issue” of a newsletter as well as standalone entities. This means you can read an issue of MacStories Weekly in its entirety, but also open, share, and browse the individual sections that make up an issue as if they were regular articles.

Let me give you a few examples. Thanks to Calliope, you can read Issue 285 of MacStories Weekly on the web here. That link opens the complete issue of MacStories Weekly we sent out on August 13, 2021, featuring sections such as MacStories Recommends, Tips, and App Debuts.

An issue of MacStories Weekly.

An issue of MacStories Weekly.

You can read the full issue on a single page, and you can share a link to it on social media, but now you can also open its individual sections as separate posts. Click on the ‘Tips’ section name or the title of John’s post (shown below), and you’ll open that specific section as a standalone article on Calliope, which comes with its own URL that you can also share with other people or bookmark.

You can open individual sections from MacStories Weekly.

You can open individual sections from MacStories Weekly.

There are a couple design touches worth noting here about reading MacStories Weekly sections as standalone posts. Above the title, you’ll see the post’s published date as well as which issue of Weekly it appears in. This makes it easy to jump back into the full issue if you just landed on an individual section from it. Furthermore, at the end of each post, you’ll see an ‘As seen in…’ indicator that tells you which section of MacStories Weekly the post belongs to. You can click the colored indicator to jump back to the full issue and automatically scroll to the selected section, which is pretty neat.

Tap these buttons to jump back to the full issue of MacStories Weekly.

Tap these buttons to jump back to the full issue of MacStories Weekly.

These features are supported for every issue of MacStories Weekly we ever published and every section contained in them. This means around 3,000 posts have been manually imported and tagged to allow you to seamlessly move back and forth between full issues and standalone sections. I personally wanted this functionality because I’ve long wished I could share some of my stories with dedicated links on Twitter; Calliope lets me do that. For instance, here’s my Making Of story from the iOS 14 Review last year or my Home Screen from earlier this year.

The same technology is also supported for browsing articles by author, which, again, could have never been possible with newsletters. In every issue of MacStories Weekly and the Monthly Log published on Calliope, you’ll now find profile pictures and author names for every section. Click those, and you’ll be taken to the stream of posts for the selected author.

Browsing by author on Calliope.

Browsing by author on Calliope.

The Explore Panel

The underlying modularity of Calliope is at the core of Explore, one of the advanced features for Club MacStories+ and Club Premier members.

The Explore panel lets you browse the entire archive of Club MacStories content, starting from September 2015, choosing from a variety of filters you can easily select. The supported filters are:

  • Newsletter type (MacStories Weekly or Monthly Log)
  • Section of newsletter
  • New original columns (Automation Academy and The Macintosh Desktop Experience)
  • AppStories+ show notes (Club Premier-only)
  • Author
  • Date ranges

As you can see in the screenshot below, it’s quite a comprehensive set of filtering criteria:

Calliope's Explore panel.

Calliope’s Explore panel.

Here’s where it gets even more interesting though: you can mix and match filters in the Explore panel to find any set of results you may be interested in, and you can get quite creative with them.

Let’s start simple. If you just want to see all issues of MacStories Weekly, click the red checkbox next to MacStories Weekly, hit the Explore button at the bottom, and Calliope will show you a reverse-chronological list of all issues of MacStories Weekly. You can then open each one and read it in its entirety, or you can dig deeper into individual sections of the newsletter.

Browsing all issues of MacStories Weekly.

Browsing all issues of MacStories Weekly.

The same goes for the Monthly Log or individual authors. Select them, click Explore, and you’ll be presented with a full log of articles. As you can see in the screenshot below, Calliope offers an inline ‘Explore Results’ box with a summary of all the filters you selected. This box is where you can generate RSS feeds for anything (more on this later) as well as refine your selection of filters. Here’s another pro tip: the individual filters displayed inside the ‘Explore Results’ box are clickable, so you can select them if you want to explore results for a specific filter.

Filters in the Explore Results box are clickable.

Filters in the Explore Results box are clickable.

Calliope’s Explore panel, however, allows you to precisely fine-tune the content you want to browse by combining multiple filtering criteria in a custom query. For instance, let’s say you want to find “all App Debuts and Extensions written by Federico between September 1 2018 and September 1 2021”. Using the Explore panel, you can select the sections you want to filter, click the ‘Federico’ author, then use a native date picker (which looks even better in iOS and iPadOS 15) to select the date ranges you want. The ‘Date Range’ section of the panel contains ‘To’ and ‘From’ fields for dates; the latter defaults to today’s date, but you can change it to whatever you want.

Hit the Explore button, and voila:

An advanced Explore query.

An advanced Explore query.

Once you start assembling these complex Explore queries, you may notice that, occasionally, different authors show up in results for a specific section even though you picked another author in Explore. That’s because, occasionally, both John and I contribute to the same section of MacStories Weekly with separate posts, such as two Extensions in the same issue. If you click through the result and open the full section, you’ll always find the author you initially selected.

The power of Explore lies in how we carefully organized six years of Club MacStories content upon importing it into Calliope. Because we were able to re-add metadata such as section names, dates, and authors, every section of every newsletter we’ve ever sent has turned into an item that can be filtered and combined with others to craft your very own personalized Club reading experience.

Which brings me to the next major feature of Calliope for Club MacStories+ and Club Premier members…

RSS Feeds for Anything

The technology behind Explore is at the core of a new feature that’s been highly requested by Club members over the years: the ability to read our content via RSS.

In adding support for reading Club MacStories content via RSS, we could have stopped at simply allowing members to, say, receive new issues of MacStories Weekly and the Monthly Log via RSS. But in the spirit of taking our time to do this right, we went beyond that: with Calliope, any combination of Explore filters can become a unique RSS feed tied to your subscription. You can create an unlimited number of RSS feeds for any newsletter, section, column, author, or combination of them. And you can do all this from the same Explore interface you normally use to browse Club MacStories content.

There was only One True Way to call this feed.

There was only One True Way to call this feed.

The first time you open your personalized Feeds page, you’ll be presented with a list of default RSS feeds that we think will get you started nicely with this feature. The real fun, however, starts when you try to set up your own RSS feeds based on filtering criteria that matter to you. Allow me to describe a few examples to give you a sense of the breadth and flexibility of Calliope’s RSS feeds.

Let’s say you’re only interested in making an RSS feed for new issues of MacStories Weekly and the Monthly Log. In Explore, hit the checkbox next to those items, click Explore, and you’ll see a ‘Create Feed’ button in the Explore Results box. Create the RSS feed, and a unique RSS URL that is tied to your Club subscription will be generated by Calliope, ready to be pasted in any RSS reader you want to use. The next time either newsletter comes out, you’ll get it as a full article via RSS.

Creating a feed in Calliope and viewing it in Reeder.

Creating a feed in Calliope and viewing it in Reeder.

You can view all the feeds you’ve created on the Feeds page. You can create an unlimited number of feeds based on any combination of filtering attributes supported by the Explore panel. If you re-open an Explore-based filter that already has an active feed in your Club account, you’ll see that ‘Manage Feed’ replaces the ‘Create Feed’ button. That happens because Calliope knows you already have the same feed saved in your account, and it won’t allow you to create a duplicate copy. If you want to delete a feed, you can do so at any time by clicking the ‘Delete Feed’ button in the feed’s management UI.

Sorry, John, but I already edit your articles.

Sorry, John, but I already edit your articles.

I’m very proud of our RSS functionality on Calliope: it’s the kind of feature I’ve always wanted on MacStories, and I’m pretty sure you’ve never seen an RSS implementation on any tech publication that gives you this kind of customization and fine-grained control. You can get started with RSS feeds by visiting the Feeds page, which has some default examples ready for you to get you started with feeds on Calliope.

Calliope’s search feature, like RSS, builds on top of Explore: it lets you combine the same filters seen in Explore with keywords for full-text searches across our entire back catalog of six years of Club MacStories content. It’s incredibly powerful, and if you’ve ever found yourself needing to find an old Club post with just a few vague details you remember about it, it’s the feature you’ve been waiting for.

The first thing you should know about Calliope’s search is that it supports auto-complete for the same filters seen in Explore. Start typing ‘Fe…’, for instance, and ‘Federico’ will be suggested as a filter; click it (or select it from your keyboard), and it gets added to your search query. The same goes with any section name or, if you subscribe to Club Premier, AppStories+ episodes and show notes. You can also type “this month/year” or “last month/year” to add date-based filters to your query. As you type and click on suggested filters, you’ll see their icons fill up the bottom tray of the search field; you can click those filters to remove them from your search.

Auto-complete for filters in search.

Auto-complete for filters in search.

You can create searches that only contain suggested filters, click Return, and see search results based on your selected criteria. That’s technically not different from selecting the same filters via Explore, which is why you can create RSS feeds for filter-based search queries too.

The big addition to the search functionality is, unsurprisingly, the ability to add any keyword to your search query and search the full text of Club MacStories articles. You can even combine built-in filters with arbitrary keywords to assemble extremely specific search queries, such as “Federico Extensions from 2021 that contain the word Obsidian”.

Add a keyword to your search...

Add a keyword to your search…

...and find results.

…and find results.

The search feature is perfect for all those times when you vaguely remember something from one of our stories and the only way to find it is to keep looking. With Calliope’s powerful search feature, you can mix and match filters and keywords and rest assured our system will look across the entire catalog of six years of content.

There are even some fun Easter eggs hidden in the search field, and I’m curious to see who will discover them first.

The Account Page and Connecting Discord

By clicking your profile picture (powered by Gravatar) in the top right corner of the Club MacStories and AppStories websites, you’ll see a menu containing links to various pages you have access to. The most important one I want to highlight here is the Account page.

Our new Account page.

Our new Account page.

The new Account page is split into two areas: on the left side, you’ll see details about your subscription and a button to open the Memberful page to manage it; on the right side, if you’re a Club MacStories+ or Club Premier member, you’ll see a blue button to join the Club MacStories Discord server. To join our Discord, click the button, authenticate with your Discord account, and Calliope’s custom Discord bot will give you access to our server and maintain that access enabled as long as you remain a Club MacStories+ or Club Premier member.

Connecting your Discord account to our server.

Connecting your Discord account to our server.

After connecting your Discord account, launch the Discord app on any device and open the Club MacStories server. The first time you do so, you’ll have to agree to our rules by reacting with a thumbs-up emoji to the message I posted in the #rules channel. Once you’ve done that, you’ll get access to the rest of the server and you’ll be able to start interacting with fellow Club members, our moderators, and the MacStories team.

The Club Discord server.

The Club Discord server.

I look forward to seeing you all in the Discord.

AppStories+ Show Notes and the AppStories+ Feed

Lastly, I want to cover AppStories+ and its integration with Calliope and Club Premier. Like the club.macstories.net website, the new appstories.net website runs on Calliope. We have transitioned the existing RSS feed of the regular AppStories podcast to Calliope, and we’ve built the new premium AppStories+ feed on top of it as well.

As I mentioned yesterday, building AppStories on top of Calliope enabled a couple cool things:

  • You can use your existing Club MacStories account for AppStories+ as well;
  • You can upgrade your Club account to a plan that offers AppStories+;
  • If you’re a Club Premier member, you can use full-text search on both the Club MacStories and AppStories websites for the AppStories+ show notes.

The latter option is particularly handy if you remember a link or topic from the AppStories show notes: just use search on either the Club or AppStories websites, and you’ll find the episode you’re looking for.

Club Premier members can search for AppStories show notes.

Club Premier members can search for AppStories show notes.

To find your AppStories+ podcast feed (which, like other feeds, is unique to your account, so don’t share it), you have to log into the AppStories+ website with your Club credentials and head over the Subscribe page. If you’re signed in, you’ll see buttons to add AppStories+ to popular podcast clients as well as a button to copy its standard RSS URL. We’re very proud of the fact AppStories+ is a premium show based on the open nature of RSS, which means you can listen in any app you want.

The new AppStories website and subscribing to AppStories+ in Castro.

The new AppStories website and subscribing to AppStories+ in Castro.

One last nice touch I want to mention: thanks to Calliope, we don’t have to publish two separate posts for AppStories and AppStories+. Instead, we publish one episode, and Calliope’s support for conditional blocks ensures free users and AppStories+ members see the same post with different content in it. This means you don’t have to use a separate website for AppStories+: if you’re logged into appstories.net as a member, you’ll see AppStories+ episodes and you’ll be able to listen via our web player, which will default to longer, ad-free, higher-quality episodes.

Watch Our Screencasts

John produced a series of terrific screencasts covering our announcements this week. I’ve embedded the ones related to Calliope below, so you can get up to speed on all its features and see it in action.

John also prepared an excellent feature speedrun you can watch below:

Calliope, the Future of MacStories

As I wrote yesterday, Calliope isn’t just a website we launched for Club members: it’s an entirely custom, scalable platform that spans Club MacStories and AppStories, upon which the main MacStories.net website will also run in the future. It’s our goal to transition the entire MacStories backend and database (which dates back to 2009) to Calliope; that’s how much we believe in it.

I’m going to leave the technical details of Calliope to Alex – who built it all – for a separate story, but I’m incredibly proud of everything we accomplished as a team for Calliope. We already have several features planned for future iterations of it, and we see this as a turning point for MacStories as an independent company that spans articles, podcasts, memberships, community, merchandise, digital products, and more.

Whether you’re a Club member or AppStories+ listener, I hope you’ll enjoy using Calliope as much as we loved building it.

Access Extra Content and Perks

Founded in 2015, Club MacStories has delivered exclusive content every week for nearly a decade.

What started with weekly and monthly email newsletters has blossomed into a family of memberships designed every MacStories fan.

Learn more here and from our Club FAQs.

Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with apps, tips, automation workflows, longform writing, early access to the MacStories Unwind podcast, periodic giveaways, and more;

Club MacStories+: Everything that Club MacStories offers, plus an active Discord community, advanced search and custom RSS features for exploring the Club’s entire back catalog, bonus columns, and dozens of app discounts;

Club Premier: All of the above and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.