WriteFreely SwiftUI Multiplatform App (Mac, iPhone, iPad)

So cool! I just logged in and got my previous posts and a draft local post I had started playing around with the app. I’ll make my next post with it. This is very nice!


Hey @protofucker, I’m really sorry for not communicating minimum system requirements more clearly in my articles on Write.as and in my posts here.

Because we’re trying to build both an iPhone app, an iPad app, and a Mac app all at the same time, the technology stack we’re using (SwiftUI multiplatform) to move this project forward for all of those platforms at the same time aren’t available prior to iOS 14/macOS 11.

Apple announced the SwiftUI multiplatform framework at their June developer conference, and I’ve been using their beta operating systems and developer tools since then to develop the suite of apps. As the sole developer on the project, it’d have been impossible to get to this point and support two very different codebases if I’d been building this using the older iOS and Mac frameworks.

Again, I’m sorry for the disappointing news. My hope is that since everything is open source —including the code library we’re using to communicate with WriteFreely— the community will build an ecosystem of great apps for everyone!

Excellent! Glad that worked for you, and I’m having a look at that bug today. :slight_smile:

Hey, I signed up for the beta and tried out the application. The look and feel are minimal just like Write.as and Writefreely itself and I love it. One of the things I miss in the application is to migrate posts from one collection or drafts to another but there is already an open issue for it.

I’d like to add a separate feature request about the selection of collection before submitting the post. “All Posts” seems to be the default view in the application and so it is only natural for users to create new post in this section. But, the problem is that once you are ready to post it, you can’t select the collection and it by default goes to the Drafts collection. The possible work around is to manually copy the text and paste it in a new post under the desired collection. This could be avoided by presenting a drop-down right before submitting the post.

Good comment, thanks @arg! Just to add some detail, if you’re in the “All Posts” list and create a new post, it’ll be added to your Drafts. The thinking was that combined with the issue for choosing a collection/blog, from this “All Posts” view, you could create a new draft, and if you wanted it to be published under a given collection, that would be possible (once that feature was implemented). In other words:

  1. If you’re in Drafts or All Posts, tap the new-post button to create a new post in Drafts
  2. Write your post in the editor
  3. Optionally, select the collection/blog you want to publish to in the editor
  4. Publish your post

Would that flow work for you?

By the way — I believe this is the first WriteFreely/Write.as client app that has an “All Posts” view, and I’d love some feedback on whether folks find it valuable or not.

Yes, that’s exactly the feature I would like in the app. I like the idea of the “All Posts” and one benefit that I can right away see is that I get to see all posts including “Drafts” in a single view that makes it much easier to publish drafts by changing there collection once the feature is in. I think I’ll only be able to give better feedback once I use it with my existing blogs though.

One other thing I noticed is that “Drafts” become a bit redundant with the new in-app local drafts. But, potentially server-side sync between compatible apps would be really nice. This way, the unpublished drafts can truly remain private but still accessible from different platforms.

I have some private blogs on WriteFreely with a lot of posts (journals, etc). One big pain point for me currently is the difficulty to read the entries of a specific date in the past (where the date is the title of the post). All of the search solutions mentioned in this forum are either public search engine-based or the ones which require public or at least an unlisted blog. What I would love to have is at least a title-based search if not full-text search locally in the application either on the “All Posts” view or collection specific view or both that lets me find and jump to the older articles quickly. That will be a big value add I think.

That’s okay. Thank you @angelo for taking the time to respond so thoroughly. Hopefully by the time the official is released, I’ll have been able to update to iOS 14 (it’s a jailbreaking issue, so its ultimately by choice that I’m not just being a normal person and updating like everyone else). Also, I’m hoping that eventually we’ll gain the ability to update our blogs through iA Writer, which will make for a close second, as far as options go. Cheers and keep up the great work!


Thanks for this feedback! I don’t think search is something we can do a good job of implementing for 1.0, but it’s certainly a conversation we can have at the platform level.

Tip: when I want to search for something a site that doesn’t have a search feature, I generally use a site query on DuckDuckGo.com, like so:

site:http://write.as/angelo SwiftUI

Coming soon to a TestFlight beta near you! :smile:

Beta 2 is now live! I wrote about what’s new here:

New Local Posts Are Always Drafts

The first change is that any new post is created as a local post in your Drafts. Previously, if you were viewing the posts in your My Cool Blog collection, creating a new local post would place it in that collection; now, no matter what you’re looking at, it will always end up in Drafts. This makes the button’s behaviour easier to understand — no having to guess where the new post you created ended up.

Moving Posts Between Collections

The biggest change, though, is that you can now move posts between your Drafts and collections. I’m personally pretty excited about this, because it wasn’t even in-scope for the first release. But we got it done, and I’m really happy with how it works!

There are three parts to this feature.

First, the Share and Publish buttons in the post editor have been moved under a single Menu button. Tap it, and you’ll find a few actions you can take on the post.

If this is a local Draft, tapping the Menu button presents two options: Publish… and Share . The Share option will be disabled, because the post is local — you can’t share a link to something that’s not live on the web, after all.

Tapping the Publish… option presents a submenu asking you where you’d like to publish the post. Choose the blog you want the post to be a part of (or Drafts), and it’ll be published there!

If you’ve got a published post loaded in the editor, the menu is a little different. You’ll still see the Publish and Share options, but below that you’ll also see a list of your blogs. Just tap the blog you want to move the post to, and the app will send the request to the server for you.

You can also check out the release notes for bugfixes and other changes.


Hey @angelo ! Very cool update. Let me ask a writing or posting question on the beta. If I install the editor on my iPad and iPhone both and I wish to edit the posts on either device or the other device, what is the best way to do this with the second beta? I’d like to start a post on my iPhone when I’m out and about but finish on my iPad later in the day. It may be I add a link to images or just change the post somehow prior to publishing? What is the easiest workflow to allow this kind of functionality without first publishing the post? Perhaps write it as anonymous and then change the collection to my blog?

Thanks for the second beta. Going to go test and have fun with it now.

Hey @mpmilestogo! You’ve got it, the best way to do this is to write it as anonymous (or perhaps a private ‘staging’ blog), publish it to the server, and then once you’re done move it to a public blog.

With the iOS app now available for sale, signups for beta testing have been closed. We hope to open the beta up to new testers in the future, and thank you so much for all your feedback so far!

Oh, I forgot to mention! I pinned a “how-to” of sorts for the iOS app in the help forum: Using the WriteFreely iOS App. Hope you find it helpful!

WriteFreely for iOS v1.0.1

The first patch release of the WriteFreely iOS app is now available! This update improves performance, and squashes a few bugs, too. It was just approved for release, so if you don’t see it on the App Store, it may still be in the process of rolling out.

If you have a few minutes, we’d appreciate you adding your review!

Here’s a look at what’s new:


  • A link in the Settings screen of the app now points to the How-To guide in the forum.
  • A link in the README to the App Store product page for the iOS app.
  • An alert now warns you if you try to perform a task that requires an internet connection when there is no network connection.
  • Added short extracts of the post body to the post list when the post has no title.


  • Local posts are no longer deleted when logging out.
  • The app now requires you to confirm when logging out, and indicates how many local edits will be lost by doing so.
  • Various editor improvements:
    • The cursor now focuses on the title field, and brings up the keyboard when loading a post in the editor.
    • The Return key navigates from the title field to the body field.
    • The title field now automatically increases its height as the text wraps.
    • Increased the line spacing in both the title and body fields.
  • When logged out, the app now only shows the “Drafts” list, rather than the “All Posts” list.
  • Buttons that handle network requests (e.g. publishing, reloading from server) now show a busy indicator while waiting to complete the task.


  • After moving a post from Drafts/Anonymous to a blog, the share link format retained the old single-post format. This is now fixed.
  • The placeholder text on new (empty) posts now shows reliably.
  • The title and body fields in the editor are better aligned.
  • The app more consistently loads the last draft (or a new draft) on launch.
  • Fixed a crash on launch that was caused by the list of posts from local storage was being changed while being fetched.
  • Fixed a silent failure where the app would appear to login but could not get a valid access token from the server.

Just sharing a little update here — work continues on WriteFreely for Mac, and it’s coming along nicely. Watch this space for a future beta announcement!

1 Like

The beta is here! Check out details in this forum topic:

1 Like

I want to try this. I am a paying Write.as user and really like the service.

Hi @andreas, would you kindly send a message to @beta-mac indicating your interest in testing the app? Please be sure to have read my post in the linked forum topic, which has been edited to include some terms you’ll have to agree to if you wish to test the app. Thanks! :slightly_smiling_face:

Hello friends! We just released an update (v1.0.4) to the WriteFreely for iOS app, with a few bugfixes and improvements:


  • The published date now reflects the time a post was published, not created.


  • Restored the launch-to-last-draft functionality.
  • The post status updates correctly after publishing local changes to an existing post.
  • The server URL field is better validated when logging in to a WriteFreely instance/Write.as.

You can get the update on the App Store, and if you’ve got any comments or questions, please be sure to visit the help forum!