Go to file
Angelo Stavrow 6eab5d0efd
Do not include .build folder in repo
2021-05-20 16:26:57 -04:00
.build/documentation Update documentation and move to /.build directory 2021-05-20 15:59:31 -04:00
.swiftpm/xcode/package.xcworkspace Initial Commit 2020-06-18 15:57:21 -04:00
Sources/WriteFreely Rename Helpers file to HelperCodingKeys 2021-05-20 16:17:38 -04:00
WFPackagePlayground.xcworkspace/xcshareddata Rename WriteFreelyClient to WFClient 2020-08-17 10:47:30 -04:00
.gitignore Do not include .build folder in repo 2021-05-20 16:26:57 -04:00
CODE_OF_CONDUCT.md Adds code of conduct documentation 2020-06-30 11:49:29 -04:00
CONTRIBUTING.md Update contributing doc to point to code of conduct 2020-06-30 11:54:06 -04:00
LICENSE.md Release alpha version 2020-06-23 16:54:36 -04:00
Package.swift Release alpha version 2020-06-23 16:54:36 -04:00
README.md Update README for generating documentation 2021-05-20 16:01:44 -04:00

README.md

WriteFreely

A Swift package that wraps the WriteFreely 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. 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:

$ rm -rf .build/documentation
$ swift doc generate Sources --module-name WriteFreely

Installing

  1. Clone this repository.
  2. There is no step two.

Running the tests

TK

Deployment

Follow the instructions in this Apple Developer document to add the WriteFreely Swift package to your app.

Once you've done that, just import the library into whichever files should consume it:

@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:

func loginHandler(result: (Result<WFUser, Error>)) {
    do {
        let user = try result.get()
        print("Hello, \(user.username)!")
    } catch {
        print(error)
    }
}


guard let instanceURL = URL(string: "https://your.writefreely.host/") else { fatalError() }
let client = WFClient(for: instanceURL)
client.login(username: "username", password: "password", completion: loginHandler)

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. 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 BSD 3-Clause License - see the LICENSE.md file for details.