Swiftpack.co - Package - mpangburn/NightscoutKit


Swift 4.0 Build Status MIT @pangburnout

A Swift wrapper around the Nightscout REST API built for iOS, macOS, watchOS, and tvOS applications.

NightscoutKit supports the following operations:

  • fetching and uploading blood glucose entries
  • fetching, uploading, updating, and deleting treatments
  • fetching, uploading, updating, and deleting profile records
  • fetching device statuses
  • fetching the server status and settings


NightscoutKit is released under the MIT license. See LICENSE for details.


Stars: 4


Used By

Total: 0


v0.5.0 - 2018-09-04 04:05:53

  • Large and breaking changes to the API, most notably the decoupling of upload and download operations into NightscoutDownloader and NightscoutUploader.
  • NightscoutDataManager, which can sync uploads/updates/deletions with the latest downloads to keep information up to date before the Nightscout API is updated to reflect the changes.
  • Dependency on my utility library, Oxygen, which separates out non-Nightscout functionality like Result, Atomic, and Weak.

v0.4.2 - 2018-05-13 22:56:25

  • Credentials API refactoring

v0.4.1 - 2018-05-13 06:23:40

  • Hotfix: Profile treatment carb ratio type

v0.4.0 - 2018-05-13 05:12:23

  • Significant overhaul of the treatment API for ease of use
  • Swift 4.1 compiler-generated Equatable and Hashable implementations for many types

v0.3.2 - 2018-04-23 04:56:50

  • Swift 4.1 & Xcode 9.3

v0.3.1 - 2018-03-27 06:50:37

  • NightscoutObserver now holds weak references to its observers.
  • Observers are now concurrently notified of the operations of an observed Nightscout instance.
  • NightscoutError now provides more meaningful localized error messages.
  • NightscoutDataStore now provides an additional option for describing how fetched data should be handled.

v0.3.0 - 2018-03-25 00:40:24

Breaking Changes:

  • Completion handler types of many Nightscout operations have been changed.
  • NightscoutTreatment.duration is now of type TimeInterval?.
  • NightscoutError.missingData has been removed.


  • New NightscoutObserver API for responding to Nightscout operations, including general-purpose NightscoutLogger and NightscoutDataStore observers.
  • Improved URLSession and DispatchQueue use in managing Nightscout operations.
  • NightscoutError now conforms to LocalizedError.

v0.2.1 - 2018-03-23 03:23:22

  • Lower deployment target versions appropriately.

v0.2.0 - 2018-03-22 01:24:37

Breaking Change:

  • Tighter coupling of glucose values and units through BloodGlucoseValue.


  • Record change between consecutive entries (e.g. glucose change, rate of change, etc.) through DeltaRecordingNightscoutEntry.

v0.1.0 - 2018-03-18 03:22:44

  • Initial release.