Source code for the WriteFreely SwiftUI app for iOS, iPadOS, and macOS
Go to file
Angelo Stavrow 549ad3039f
Clean up project warnings (#199)
* Set "recommended project settings" for Mac app

* Add default fallback for font typingAttribute

* Clean up linter errors

* Update extension iconset

* Fix spm errors and upgrade sparkle (#203)

* Switch WriteFreely package import from ssh to https

* Sign macOS project target for Development

This fixes a crash-on-launch bug when running Product > Run from Xcode (Product > Archive should work correctly). See https://github.com/sparkle-project/Sparkle/issues/2056 for more details.

Bug introduced by commit:
671b0540ac

* Update Sparkle to v2.0 from official repo

Previously, we forked the repo to the WriteFreely org because Sparkle didn't support tag-based SPM updates. We therefore had to pull from the `master` branch, so forking insulated us from unexpected changes.

As of 2.x Sparkle now allows for tag-based updating via SPM; we'll allow patch updates but stop short of 2.1 until we can vet changes.

* Add MacUpdatesViewModel ObservableObject

* Use MacUpdatesViewModel to handle Sparkle update logic
2022-04-02 08:04:50 -04:00
ActionExtension-iOS Clean up project warnings (#199) 2022-04-02 08:04:50 -04:00
iOS Add action extension 2021-11-19 15:41:54 -05:00
macOS Clean up project warnings (#199) 2022-04-02 08:04:50 -04:00
Shared Clean up project warnings (#199) 2022-04-02 08:04:50 -04:00
Technotes Add troubleshooting/deploy details to technote 2021-01-05 16:30:15 -05:00
Tests iOS Add SwiftLint and sort out boilerplate warnings and errors 2020-07-22 10:17:11 -04:00
Tests macOS Add SwiftLint and sort out boilerplate warnings and errors 2020-07-22 10:17:11 -04:00
WriteFreely-MultiPlatform.xcodeproj Clean up project warnings (#199) 2022-04-02 08:04:50 -04:00
.gitignore Update minimum required version of WriteFreely Swift package 2021-05-20 16:43:28 -04:00
.swiftlint.yml Implement basic post store and list / editor UI components 2020-07-25 07:02:11 -04:00
CHANGELOG.md Update change log and bump build number for release 2021-12-03 15:17:42 -05:00
CODE_OF_CONDUCT.md Add project metadocuments 2020-07-22 11:54:01 -04:00
CONTRIBUTING.md Add project metadocuments 2020-07-22 11:54:01 -04:00
LICENSE.md Swift from AGPLv3 to GPLv3 2020-07-30 10:39:13 -04:00
README.md Update README with office hours link 2021-05-04 15:49:08 -04:00
WFACollection+CoreDataClass.swift Add WFACollection NSManagedObject class for local storage 2020-09-08 09:54:58 -04:00
WFACollection+CoreDataProperties.swift Fetch user collections into CoreData and list from ManagedObjectContext 2020-09-08 09:55:43 -04:00
WFAPost+CoreDataClass.swift Add WFAPost NSManagedObject class for local storage 2020-09-08 09:57:05 -04:00
WFAPost+CoreDataProperties.swift Add wasDeletedFromServer flag to WFAPost entity 2020-09-17 14:31:45 -04:00
WriteFreely-MultiPlatform (iOS).entitlements Add App Group entitlement 2021-10-15 15:05:51 -04:00

WriteFreely SwiftUI MultiPlatform Client

A multiplatform (iOS, iPadOS, and macOS) client for WriteFreely, built in SwiftUI.

How To Get The Apps

The iOS app is now available on the App Store for iPhones and iPads running iOS 14. Check out this help forum topic for a guide on using the app.

The Mac app is still under development.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

⚠️ Building and testing the iOS targets will work on any version of macOS that supports Xcode 12, but building and testing the macOS target requires macOS 11 (Big Sur).

SwiftLint is run as a build phase for all targets, so that linting warnings and errors are shown in Xcode.

Running the tests

To run the tests, select the scheme you want to test (iOS or macOS) and choose ProductTest from the Xcode menu.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Need help getting started? Find out more about the project's office hours.

Versioning

We use SemVer for versioning and track changes in CHANGELOG.md. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the GPL v3 License. See the LICENSE.md file for details.