Skip to content

Commit 7371064

Browse files
authored
Merge pull request #4 from nasty-project/readme-repo-focus
README: refocus on what this repo publishes; drop maintenance.md
2 parents 05a1875 + b8c07ee commit 7371064

2 files changed

Lines changed: 21 additions & 102 deletions

File tree

README.md

Lines changed: 21 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,40 @@
11
<p align="center">
2-
<img src="https://raw.githubusercontent.com/nasty-project/nasty/main/webui/src/lib/assets/nasty-white.svg" width="300" alt="NASty — Storage with attitude. A modern NAS appliance built on bcachefs, designed for homelabs and small teams." />
2+
<img src="https://raw.githubusercontent.com/nasty-project/nasty/main/webui/src/lib/assets/nasty-white.svg" width="300" alt="NASty" />
3+
</p>
4+
5+
<p align="center">
6+
<strong>Reference documentation for the <a href="https://github.com/nasty-project/nasty">NASty</a> NAS appliance.</strong>
37
</p>
48

59
---
610

7-
## What is NASty?
11+
This repository holds the long-form docs for [nasty-project/nasty](https://github.com/nasty-project/nasty). For the project itself — features, installation, screenshots, contributing — start there.
812

9-
NASty is a self-contained NAS operating system that turns commodity hardware into a full-featured storage appliance.
13+
## What's here
1014

11-
- **Filesystems** with compression, checksumming, erasure coding, and tiering
12-
- **Subvolumes** with O(1) snapshots and COW cloning
13-
- **File sharing** via NFS, SMB, iSCSI, and NVMe-oF
14-
- **Virtual machines** with QEMU/KVM and browser-based VNC console
15-
- **Apps** for running containerized services on the appliance
16-
- **Alerts** with configurable rules for filesystem usage, disk health, and more
17-
- **Web UI** for managing everything from a browser
18-
- **Web terminal** with built-in shell access
19-
- **Atomic updates** with one-click rollback
20-
- **Kubernetes integration** via a CSI driver for dynamic volume provisioning
15+
[`api.md`](api.md) — the **JSON-RPC method reference**. Every RPC the engine accepts, with role, params, return type, and any related object schemas. Regenerated nightly from the engine's `--dump-docs` output (the engine is the source of truth).
2116

22-
## Getting Started
17+
## Interactive API browser
2318

24-
Download the latest ISO from [Releases](../../releases) and boot it on your hardware. The installer will guide you through disk selection and initial setup.
19+
For a searchable, browsable, *try-it-out* version of `api.md`, the same OpenAPI spec is served as a static Swagger UI at:
2520

26-
Pre-built QCOW2 cloud images (x86_64 and aarch64) are also available in Releases for VM-based testing.
21+
**[nasty-api.pages.dev](https://nasty-api.pages.dev)**
2722

28-
Default credentials: `admin` / `admin`.
23+
Updated on the same nightly cadence as `api.md` from this repo. On a running NASty box the engine serves the identical page at `/api/docs` (authenticated against your session, so "Try it out" actually works against your own RPC surface) and the raw spec at `/api/openapi.json`.
2924

30-
## Kubernetes CSI Driver
25+
## How the docs stay in sync
3126

32-
NASty includes a CSI driver for dynamic volume provisioning in Kubernetes clusters:
27+
`api.md` is *generated*, not hand-written. The regen workflow:
3328

34-
- [nasty-csi](https://github.com/nasty-project/nasty-csi) -- CSI driver
35-
- [nasty-chart](https://github.com/nasty-project/nasty-chart) -- Helm chart
36-
- [nasty-go](https://github.com/nasty-project/nasty-go) -- Go client library
37-
- [nasty-plugin](https://github.com/nasty-project/nasty-plugin) -- kubectl plugin (`kubectl nasty`)
29+
1. Checks out [`nasty-project/nasty`](https://github.com/nasty-project/nasty) `main`
30+
2. Runs `nasty-engine --dump-docs` against the workspace
31+
3. Copies the resulting `api.md` into this repo
32+
4. Commits if anything changed (commit message includes the source-repo SHA)
33+
5. Bundles the matching `openapi.json` + vendored Swagger UI into a static site and deploys it to `nasty-api.pages.dev`
3834

39-
## Protocols
35+
Runs once a day at 04:00 UTC and on manual workflow_dispatch. So docs are at most ~24h behind `main`. See [`.github/workflows/regen-api-md.yml`](.github/workflows/regen-api-md.yml) for the implementation.
4036

41-
| Protocol | Use Case |
42-
|----------|----------|
43-
| **NFS** | Linux/Unix file sharing, Kubernetes ReadWriteMany |
44-
| **SMB** | Windows/macOS file sharing |
45-
| **iSCSI** | Block storage for VMs and databases |
46-
| **NVMe-oF** | High-performance block storage over TCP |
37+
Spotted drift? File an issue or PR against [`nasty-project/nasty`](https://github.com/nasty-project/nasty) — the registry lives in the engine, this repo just publishes.
4738

4839
## License
4940

maintenance.md

Lines changed: 0 additions & 72 deletions
This file was deleted.

0 commit comments

Comments
 (0)