https://github.com/writefreely/writefreely-swift
A Swift package wrapping the WriteFreely / Write.as API
https://github.com/writefreely/writefreely-swift
swift writefreely
Last synced: about 2 months ago
JSON representation
A Swift package wrapping the WriteFreely / Write.as API
- Host: GitHub
- URL: https://github.com/writefreely/writefreely-swift
- Owner: writefreely
- License: bsd-3-clause
- Created: 2020-06-24T12:29:28.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-12-29T14:01:45.000Z (over 1 year ago)
- Last Synced: 2024-10-29T20:25:42.772Z (7 months ago)
- Topics: swift, writefreely
- Language: Swift
- Homepage:
- Size: 149 KB
- Stars: 9
- Watchers: 4
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# WriteFreely
[](https://swiftpackageindex.com/writefreely/writefreely-swift)
[](https://swiftpackageindex.com/writefreely/writefreely-swift)A Swift package that wraps the [WriteFreely](https://writefreely.org) API, for use in your Swift projects.
## Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing
purposes. See _Deployment_ for notes on how to add the library to your app.### Prerequisites
You'll need Xcode 11.5 / Swift 5.2 installed along with the command line tools to work on this package.
Additionally, documentation is generated by [SwiftDoc](https://github.com/SwiftDocOrg/swift-doc). After making any
changes to the package's public API, you'll need to regenerate the docs; to do so, run the following commands in the
terminal from the root directory of the package:```bash
$ swift doc generate Sources --module-name WriteFreely --format html --output ./docs --base-url https://writefreely.github.io/writefreely-swift/
```### Installing
1. Clone this repository.
2. There is no step two.## Running the tests
Run the tests from the command line:
```bash
$ swift build
$ swift test
```## Deployment
Follow the instructions in this [Apple Developer document](https://developer.apple.com/documentation/swift_packages/adding_package_dependencies_to_your_app) to add the `WriteFreely` Swift package to your app.
Once you've done that, just import the library into whichever files should consume it:
```swift
@import Foundation // Or UIKit, Cocoa, &cet.
@import WriteFreely// The rest of the Swift file goes here
```Use public methods on the `WFClient` to send and receive data from the server. The methods leverage completion blocks
and the `Result` type, so you'd call them like so:```swift
guard let instanceURL = URL(string: "https://your.writefreely.host/") else { fatalError() }
let client = WFClient(for: instanceURL)
client.login(username: "username", password: "password", completion: { result in
switch(result) {
case .success():
// Do something with the returned WFUser
case .failure():
// Do something with the returned WFError
}
})
```See [the API documentation](https://developers.write.as/docs/api/?swift) for more details. Xcode-specific documentation
is also available [here](https://writefreely.github.io/writefreely-swift/).## Contributing
Please read [CONTRIBUTING.md](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](https://discuss.write.as/t/office-hours-for-writefreely-swift-projects/2788).
## Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/writeas/writefreely-swift/tags).
## Authors
* **Angelo Stavrow** - *Initial work* - [AngeloStavrow](https://github.com/AngeloStavrow)
See also the list of [contributors](https://github.com/writeas/writefreely-swift/contributors) who participated in this project.
## License
This project is licensed under the BSD 3-Clause License - see the [LICENSE.md](LICENSE.md) file for details.