# nati.ve: a native Nextcloud client that compiles app semantics instead of embedding web views

> Obiente's nati.ve is an alpha Kotlin client for Nextcloud Files and installed Nextcloud apps, with a Rust semantic compiler behind it. It ships only nightlies, and its macOS package cannot sign in yet.

**Obiente/native** — Adaptive native Nextcloud client for mobile and desktop, with dynamic support for the wider Nextcloud app ecosystem.

- Repository: https://github.com/Obiente/native
- Website: https://nati.ve
- Stars: 692 · Forks: 11
- Language: Kotlin
- License: AGPL-3.0
- Published: 2026-09-17 · Updated: 2026-09-17 · Language: en
- Canonical page: https://hysenlabs.com/projects/obiente-native

## The gap nati.ve targets: many Nextcloud apps, no shared client

Nextcloud server apps are strong on their own, but the README argues their client side is uneven: some have separate clients, some lean on the browser, some expose only part of the server functionality, and each uses different navigation and interaction patterns. nati.ve is Obiente's attempt to put one native product layer across Files and the installed apps, so a table behaves like a table and a deck like a board rather than every app collapsing into one generic screen. The target user is someone self-hosting Nextcloud with several apps enabled who wants a desktop and mobile client that is not a browser wrapper. The README is explicit that the project is unofficial and not affiliated with, sponsored by, or endorsed by Nextcloud GmbH.

## Typed contracts and a Rust semantic compiler, not a WebView

The interesting part is the build-time pipeline. The repository carries a Cargo crate named nextcloud-native-runtime, described in its manifest as "A typed semantic compiler for adaptive native Nextcloud clients", with serde, serde_json, thiserror and url as dependencies. Alongside it sit three specification documents: ADAPTER_ARCHITECTURE.md, DYNAMIC_APP_DESCRIPTOR.md and NATIVE_SCHEMA.md, plus a contractAcquisition directory. The README's framing is that verified APIs and data relationships are turned into real native interfaces instead of embedding remote web pages or exposing raw API responses. The split is visible in the layout: a Rust toolchain for the compiler, Gradle and Kotlin for the Compose Multiplatform UI, and a server-companion module. The README describes a common layer supplying identity, permissions, caching, actions, search, settings, navigation and platform behavior, with semantic components supplying the workflow. That is a real architectural claim, and it is also the main thing to verify before trusting the project: the README does not document how a new app descriptor is validated against a live server, so the contract-acquisition step is the part I would read first.

## Installing a nightly on Android, Linux or Windows

There is no package-manager install. The README lists direct downloads on nati.ve, and states that at its review date Nightly was the default and only selectable in-app update track for direct installations. Android requires 8.0 or higher. On Debian or Ubuntu you fetch the DEB, on Fedora or RHEL the RPM, on Windows x86-64 the MSI. The README says the current release notes carry checksums and the Windows provenance verification procedure, so check those before running an installer. Building from source is a Gradle project; the wrapper is checked in, so a local build starts with the wrapper rather than a system Gradle.

## Alpha means the README tells you not to trust it with your only copy

The README carries a blunt warning: nati.ve is under active development, current prereleases are for testing and contribution, and they are not yet a replacement for every production workflow or the only copy of important data. That is a stronger statement than most projects make, and it should govern how you evaluate it. The status snapshot in the README is dated 2026-08-20 and says implementation, compatibility, packaging and release availability may have changed, pointing at the GitHub Releases page as the source of truth for published builds and their known limitations. The product screenshots are generated from deterministic synthetic fixtures, and the README states they demonstrate interface behavior and responsive layout rather than proving every pictured workflow is complete on every platform or server version. Read that as: the screenshots are a rendering test, not a feature list.

## Platform support is uneven, and macOS is the clear hole

The download table treats the platforms differently. Android, Linux and Windows get latest and nightly builds; macOS Intel is labelled a preview, and the README states plainly that the macOS package is a packaging preview and cannot sign in yet. Windows builds are not Authenticode-signed, which means SmartScreen friction and a manual provenance check per the release notes. There is also a PLATFORMS.md file in the repository root, which is the right place to look for the per-platform support matrix the README only summarises. If your team is macOS-only, this is not the tool for you today. If you are on Linux or Android, the path is shorter. The Cargo manifest also carries Windows-specific dependencies under a cfg(windows) target, including Storage, Security_Cryptography and Win32_System_WinRT features, which suggests platform integration work is concentrated there.

## How it differs from the official Nextcloud desktop client

The official Nextcloud desktop client is a file synchronization tool: it mounts a folder, syncs it, and leaves the rest of the app ecosystem to the browser. nati.ve inverts that. It is offline-first and aims at the app surfaces themselves, with the README listing photos, videos, RAW files, albums, people, backups, Talk messages, calendars, contacts, tasks, mail, notes, music, recipes, boards, tables and budgets as things that should share one interaction language. The trade-off is maturity and predictability. A sync client has a narrow, well-understood job; a client that renders arbitrary installed apps through acquired contracts inherits the compatibility surface of every app it touches. If all you need is a synced folder on your laptop, nati.ve is more machinery than the problem requires, and the official client is the lower-risk choice.

## Licence and upgrade cost

nati.ve is licensed AGPL-3.0-or-later, stated in the README badge, the LICENSE file and the Cargo manifest. If you modify it and let users interact with it over a network, the AGPL's network clause is the part your legal team will want to read; I am not giving legal advice, only pointing at the clause that differs from permissive licences. Upgrade cost is dominated by the nightly track. The in-app updater offers only Nightly at the README's review date, and the recent releases are all nightly tags dated 2026-09-13 and 2026-09-14, so there is no stable channel to pin to. The repository keeps a CHANGELOG.md, a COMPATIBILITY.md and a changes directory, and COMPATIBILITY.md is where I would look before upgrading a working install. The last push to the repository was on 2026-09-14.

## Conclusion

Adopt nati.ve if you run a Nextcloud server with several installed apps and want one native client on Android, Linux or Windows, and you accept nightly builds and the README's warning that prereleases are not a replacement for every production workflow or the only copy of important data. Do not adopt it on macOS: the README states the DMG is a packaging preview that cannot sign in yet, and Windows builds are not Authenticode-signed. Before committing, verify the architecture documents still match the code, and check that the nightly you install lists your server version and the apps you depend on.

## FAQ

### What is nati.ve?

It is an independent Obiente project building a native client for Nextcloud Files and installed Nextcloud apps across mobile and desktop. The README describes it as turning verified APIs and data relationships into native interfaces rather than embedding remote web pages. It is unofficial and not affiliated with Nextcloud GmbH.

### Which platforms does nati.ve support?

The README lists Android 8.0+, Linux (DEB and RPM), Windows x86-64 and a macOS Intel preview. The macOS package is described as a packaging preview that cannot sign in yet, and Windows builds are not Authenticode-signed.

### Is nati.ve ready for production use?

No. The README states it is alpha software under active development and that current prereleases are for testing and contribution, not a replacement for every production workflow or the only copy of important data.

## Sources

- [License: AGPL-3.0](https://github.com/Obiente/native/blob/main/LICENSE)
- [Obiente/native on GitHub](https://github.com/Obiente/native)
- [Project website](https://nati.ve)
- [README](https://github.com/Obiente/native/blob/main/README.md)
- [Releases](https://github.com/Obiente/native/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/obiente-native
