Metadata-Version: 2.5
Name: nustd
Version: 0.2.0
Summary: Batteries for Nu: the fabrics (std, mem, kv, service, llm, cc, http, proxy, mp, cluster, ui) that ship alongside the nucore kernel.
Project-URL: Repository, https://github.com/nustackdev/nu
Author-email: Gor Arakelyan <gorarkln@gmail.com>
License-Expression: Apache-2.0
License-File: LICENSE.md
Keywords: agentic,ai-agents,database,distributed-systems,key-value-store,llm,nu,nustack,observability,python,ray,real-time,rocksdb,state-management,ui
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Requires-Dist: nucore>=0.2.0
Provides-Extra: all
Requires-Dist: claude-agent-sdk>=0.1.0; extra == 'all'
Requires-Dist: fastapi>=0.115.0; extra == 'all'
Requires-Dist: httpx>=0.27; extra == 'all'
Requires-Dist: invisibles-py; extra == 'all'
Requires-Dist: janus>=2.0.0; extra == 'all'
Requires-Dist: msgpack>=1.1.2; extra == 'all'
Requires-Dist: nudle>=0.1.1; extra == 'all'
Requires-Dist: ray<2.50,>=2.0; (sys_platform == 'darwin' and platform_machine != 'arm64') and extra == 'all'
Requires-Dist: ray>=2.50; (sys_platform != 'darwin' or platform_machine == 'arm64') and extra == 'all'
Requires-Dist: uvicorn[standard]>=0.30.0; extra == 'all'
Requires-Dist: virtuals-py>=0.1.2; extra == 'all'
Requires-Dist: virtuals-py[rocksdb]>=0.1.2; extra == 'all'
Requires-Dist: watchfiles>=0.24.0; extra == 'all'
Provides-Extra: cc
Requires-Dist: claude-agent-sdk>=0.1.0; extra == 'cc'
Provides-Extra: cluster
Requires-Dist: ray<2.50,>=2.0; (sys_platform == 'darwin' and platform_machine != 'arm64') and extra == 'cluster'
Requires-Dist: ray>=2.50; (sys_platform != 'darwin' or platform_machine == 'arm64') and extra == 'cluster'
Provides-Extra: http
Requires-Dist: httpx>=0.27; extra == 'http'
Provides-Extra: kv
Requires-Dist: virtuals-py>=0.1.2; extra == 'kv'
Provides-Extra: llm
Requires-Dist: httpx>=0.27; extra == 'llm'
Provides-Extra: mem
Requires-Dist: janus>=2.0.0; extra == 'mem'
Provides-Extra: mp
Provides-Extra: proxy
Requires-Dist: invisibles-py; extra == 'proxy'
Provides-Extra: ui
Requires-Dist: fastapi>=0.115.0; extra == 'ui'
Requires-Dist: msgpack>=1.1.2; extra == 'ui'
Requires-Dist: nudle>=0.1.1; extra == 'ui'
Requires-Dist: uvicorn[standard]>=0.30.0; extra == 'ui'
Requires-Dist: watchfiles>=0.24.0; extra == 'ui'
Description-Content-Type: text/markdown

# nustd

Batteries for [Nu](https://github.com/nustackdev/nu).

`nucore` is the kernel: the language, the engine, the core atoms, flows,
spans, forms, the tree rewrites, `nu.prog`, `nu.info`, `nu.inspect`. It has no
fabric backends in it. The `nu` command lives in `nucli`.

`nustd` is everything that talks to the outside world. It installs into the
same `nu.` namespace, so nothing about how you import changes:

| Fabric        | Extra                | What it is                            |
| ------------- | -------------------- | ------------------------------------- |
| `nu.std`      | -                    | Nu bindings for the Python stdlib      |
| `nu.service`  | -                    | Service / method dispatch              |
| `nu.mem`      | `nustd[mem]`         | In-process refs                        |
| `nu.kv`       | `nustd[kv]`          | Key-value storage (virtuals, RocksDB)  |
| `nu.ui`       | `nustd[ui]`          | The nudle web UI runtime               |
| `nu.llm`      | `nustd[llm]`         | LLM calls                              |
| `nu.cc`       | `nustd[cc]`          | Claude Agent SDK sessions              |
| `nu.http`     | `nustd[http]`        | HTTP client atoms                      |
| `nu.proxy`    | `nustd[proxy]`       | Remote objects over invisibles         |
| `nu.mp`       | `nustd[mp]`          | Multiprocessing workers                |
| `nu.cluster`  | `nustd[cluster]`     | Ray                                    |

## Install

```bash
pip install nustd[all]      # everything
pip install nustd[kv,ui]    # just what you need
```

`nucore` comes along as a dependency. Add `nucli` for the `nu` command:
`pip install "nustd[all]" nucli`.

Released in lockstep with `nucore` and `nucli`. Docs at
[nustack.dev](https://nustack.dev).
