Skip to the content.

Welcome to the open-source documentation for NowThis.

This site provides technical guidance for developers looking to build, fork, or contribute to the NowThis iOS client.

What's New in 26.8

The 26.8 release brings NowThis to five more languages, and changes the shape of the version number to get there.

What's New in 1.0.5

A companion Apple Watch app, unlocked by a one-time NowThis Pro purchase.

What's New in 1.0.4

The 1.0.4 release focuses on faster task entry, rock-solid Nextcloud sync, and smarter due dates.

Core Architecture

NowThis is written in Swift 6 using SwiftUI for the user interface and SwiftData for local persistence.

Key technical pillars include:

Getting Started

NowThis uses XcodeGen to avoid merge conflicts in .xcodeproj files. To build the project locally:

  1. Clone the repo from GitHub.
  2. Create a Local.xcconfig file from the template and add your Apple Developer Team ID.
  3. Run xcodegen generate to create the .xcodeproj file.
  4. Open the project in Xcode and run.

Sync Deep Dive

Our sync engine communicates with any standard CalDAV server (with first-class support for Nextcloud). It uses a pull-then-push strategy:

  1. Fetch latest changes via REPORT requests.
  2. Resolve conflicts using ETag matching.
  3. Push local changes via PUT requests.
  4. Refresh the local SwiftData ModelContext.

Security & Privacy

We take privacy seriously.

License

NowThis is released under the GNU General Public License v3.0 (GPLv3). For more details, see the LICENSE file in the repository.