Skip to content

Repository files navigation

Logo of NextcloudKit

NextcloudKit

REUSE status

Installation

Swift Package Manager

Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler. Once you have your Swift package set up, adding NextcloudKit as a dependency is as easy as adding it to the dependencies value of your Package.swift.

dependencies: [
    .package(url: "https://github.com/Nextcloud/NextcloudKit.git", .upToNextMajor(from: "2.0.0"))
]

Manual

To add NextcloudKit to your app, clone this repo and place it somewhere in your project folder.

In an Xcode project, drag the cloned folder into the Project navigator — Xcode picks it up as a local Swift package. Then select your app target and add the NextcloudKit library (and NextcloudKitUI, if you need the UI components) under General ▸ Frameworks, Libraries, and Embedded Content.

If used in another Swift package, reference it by path instead:

dependencies: [
    .package(path: "../NextcloudKit")
]

Testing

Unit Tests

Since most functions in NextcloudKit involve a server call, you can mock the Alamofire session request. For that we use Mocker.

Integration Tests

To run integration tests, you need a docker instance of a Nextcloud test server. This is a good start.

  1. In TestConstants.swift you must specify your instance credentials. The app token is automatically generated.
public class TestConstants {
    static let timeoutLong: Double = 400
    static let server = "http://localhost:8080"
    static let username = "admin"
    static let password = "admin"
    static let account = "\(username) \(server)"
}
  1. Run the integration tests.

Contribution Guidelines & License

GPLv3 with Apple app store exception.

Nextcloud doesn't require a CLA (Contributor License Agreement). The copyright belongs to all the individual contributors. Therefore we recommend that every contributor adds following line to the header of a file, if they changed it substantially:

@copyright Copyright (c) <year>, <your name> (<your email address>)

Please read the Code of Conduct. This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other.

More information how to contribute: https://nextcloud.com/contribute/

About

☎️ NextcloudKit library to build Nextcloud related Apple apps

Topics

Resources

Contributing

Security policy

Stars

28 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages