Contributing to the WriteFreely SwiftUI client

Work on the SwiftUI client for WriteFreely is coming along! The UI is well-enough in place that we can now start integrating the WriteFreely Swift package I wrote about earlier this summer. In fact, there's an open PR to kick that off — logging in and out of your WriteFreely instance (or, of course, Write.as).

But there's still a lot to be done! And as of today, there's a list of open issues under the milestone for the first beta.

These issues run the gamut between small enhancements like this one for changing the collection to which a post belongs, to big projects like implementing local storage.

And more work will come up as we go, because that's bug math for you.

But getting this list drafted is exciting. It means we've got a clear direction for building this thing, and —more importantly— it's publicly available, meaning that anyone can see what needs to be done, and makes it clear how to contribute.

So with that in place, I (again!) invite you all to have a look through the project's contributing guidelines, pick an unassigned issue, and mention it in the project's forum topic so we can help get you up and running with your contribution.

As I write this, you'll need Xcode 12β5 and SwiftLint installed on your Mac, and, if you want to be able to build and run the Mac app, you'll need to be running macOS 11β5. You don't need to be on the macOS 11 beta to work on the iOS app.

There's a lot of interesting work here, and we've gotten through a bunch of the growing pains that come with beta frameworks and operating systems. If you're interested in working on propagating state through a multiplatform SwiftUI app, we've got an issue for that. If you're happiest working on data persistence, we've got an issue for that. If async networking requests are your thing, we've got an issue for that.

(And as a reminder, the Swift package is also open to contributions!)


Enter your email to subscribe to updates:

You can also subscribe via RSS or follow @angelo@write.as on Mastodon.