nemo knowledge base
Bundle OKF 0.1 · 44 conceitos · geoffjay/nemo
Open source Repository Open in the app JSON README (API)
About
# nemo knowledge base
This is the working knowledge base for the nemo project, conforming to the
[Open Knowledge Format (OKF) v0.1](https://github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md).
It consolidates working knowledge about the project: what nemo is, how it is
structured, decisions and their rationale, recurring patterns, and plans.
It is authored by people and agents and meant to be read by both.
## For agents (policy)
This section is the single source of truth for how agents (Claude Code,
oh-my-pi, opencode, and others) should use this knowledge base. Tooling
injects it into context automatically (Claude Code via a `SessionStart` hook,
oh-my-pi via the `.omp/extensions/kb-hooks.ts` extension, opencode via the
`instructions` config), so it does not depend on `CLAUDE.md`/`AGENTS.md` being
picked up.
**Consult before acting.** Before working on a task, scan the entries below and
read any concept/decision/pattern doc relevant to what you are about to cha
Details
- Kind
- OKF bundles
- Topic
- AI, RAG & memory
- Publisher
- geoffjay
- Origin
- okf_github
- Category
- dados
- Version
- 0.1
- Stars
- 1
- Forks
- 3
- Open pull requests
- 9
- Last push
- 2026-09-03T17:20:21Z
- Repository state
- ativo
- Language
- Rust
- License
- Apache-2.0
- Added
- 2026-09-09 19:04:11
- Updated
- 2026-09-09 19:04:11
- Origin id
geoffjay/nemo:docs/knowledgebase/index.md
README
[![CI][ci-badge]][ci-url]
[![Release][release-badge]][release-url]
[![codecov][codecov-badge]][codecov-url]
[![MIT licensed][mit-badge]][mit-url]
[![Apache licensed][apache-badge]][apache-url]
[ci-badge]: https://github.com/geoffjay/nemo/actions/workflows/ci.yml/badge.svg
[ci-url]: https://github.com/geoffjay/nemo/actions/workflows/ci.yml
[release-badge]: https://github.com/geoffjay/nemo/actions/workflows/release.yml/badge.svg
[release-url]: https://github.com/geoffjay/nemo/actions/workflows/release.yml
[codecov-badge]: https://codecov.io/gh/geoffjay/nemo/graph/badge.svg?token=knPW8TUmoJ
[codecov-url]: https://codecov.io/gh/geoffjay/nemo
[mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg
[mit-url]: https://github.com/geoffjay/nemo/blob/main/LICENSE-MIT
[apache-badge]: https://img.shields.io/badge/License-Apache_2.0-yellowgreen.svg
[apache-url]: https://github.com/geoffjay/nemo/blob/main/LICENSE-APACHE
# Nemo
> [!WARNING]
> Nemo is in a Beta state, it's safe to use but breaking changes are possible.
![Nemo][logo]
A configuration-driven desktop application framework. Define UI, data sources, and event handlers in XML -- Nemo renders a native, GPU-accelerated application.
Built on [GPUI](https://gpui.rs).
## Installation
### Install script (macOS / Linux)
```bash
curl -fsSL https://raw.githubusercontent.com/geoffjay/nemo/main/scripts/install.sh | sh
```
Installs the latest release binary to `~/.local/bin` (override with `NEMO_INSTALL_DIR`,
or pin a version with `NEMO_VERSION=v0.6.0`).
### Homebrew (macOS / Linux)
```bash
brew install geoffjay/tap/nemo
```
### Prebuilt binaries
Download the archive for your platform from the [latest release][release-latest]
and verify it against `checksums.txt`.
- **macOS:** the app and binary are **not code-signed or notarized**, so Gatekeeper
blocks them on first launch. Remove the quarantine attribute after downloading:
```bash
xattr -dr com.apple.quarantine /Applications/Nemo.app # app bundle
xattr -d com.apple.quarantine ./nemo # CLI binary
```
- **Linux:** the `.tar.gz` binary is dynamically linked. Either install the `.deb`
(which pulls in its dependencies automatically) or install the runtime libraries:
```bash
sudo apt-get install -y libfontconfig1 libfreetype6 libvulkan1 \
libxcb1 libxkbcommon0 libxkbcommon-x11-0 libwayland-client0
```
### Build from source
```bash
cargo build --release
# binary at target/release/nemo
```
## Quick Start
```bash
nemo --app-config app.nemo
```
A minimal application (`app.nemo` — a single-file component entry):
```nemo
<app title="Hello Nemo">
<window title="Hello Nemo" />
<theme name="kanagawa" mode="dark" />
</app>
<template name="app">
<stack id="root">
<label id="greeting" text="Hello, World!" />
</stack>
</template>
```
> The application entry is an `app.nemo` single-file component. Legacy `app.xml`
> entries are no longer supported — the loader rejects them; rename to `app.nemo`
> (remove the `<nemo>` wrapper, move the `<layout>` body into
> `<template name="app">`). XML remains valid only inside `<include>` fragments.
## Features
- **Declarative UI** -- Component trees defined in `.nemo` single-file components
- **Live data binding** -- Connect timer, HTTP, WebSocket, MQTT, Redis, and NATS sources to components
- **Scripted logic** -- Event handlers written in RHAI
- **Theming** -- Built-in themes (Kanagawa, Catppuccin, Tokyo Night, Gruvbox, Nord) with dark/light modes
- **Extensible** -- Native plugin support via dynamic libraries
```bash
nemo --app-config examples/basic/app.nemo
nemo --app-config examples/calculator/app.nemo
nemo --app-config examples/sfc/app.nemo
nemo --app-config examples/data-binding/app.nemo # multi-file <include> example
nemo --app-config examples/components/app.nemo
```
Configuations are available in the [examples](examples) directory:
- [basic](examples/basic): A minimal application
- [calculator](examples/calculator): A calculator application
- [components](examples/components): A component-based application
- [data-binding](examples/data-binding): A data-binding application
- [data-streaming](examples/data-streaming): A data-streaming application
## Documentation
Full documentation is available at [geoffjay.github.io/nemo][docs] or locally via `zensical serve`.
Plugin API documentation is also available for [nemo-plugin][docs-nemo-plugin], [nemo-plugin-api][docs-nemo-plugin-api],
and [nemo-wasm-guest][docs-nemo-wasm-guest].
## License
MIT OR Apache-2.0
<!-- links -->
[logo]: docs/assets/nemo.png
[release-latest]: https://github.com/geoffjay/nemo/releases/latest
[docs]: https://geoffjay.github.io/nemo
[docs-nemo-plugin]: https://docs.rs/nemo-plugin
[docs-nemo-plugin-api]: https://docs.rs/nemo-plugin-api
[docs-nemo-wasm-guest]: https://docs.rs/nemo-wasm-guest