TRUSS-2 working on moving to Rust
This commit is contained in:
45
README.md
Normal file
45
README.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# Truss
|
||||
|
||||
A small, dynamically-rendered kanban server for the Arcline TODO board.
|
||||
|
||||
The server reads `TODO.md` and the per-track board files, renders the board with
|
||||
Rust + Axum + Minijinja, and persists card changes back to the same Markdown files.
|
||||
|
||||
## Quickstart
|
||||
|
||||
```bash
|
||||
cargo run
|
||||
```
|
||||
|
||||
Then open <http://localhost:5000>.
|
||||
|
||||
## Board files
|
||||
|
||||
- `TODO.md` is the master board.
|
||||
- `TODO-msp.md` is the MSP / IT track.
|
||||
- `TODO-os.md` is the OS / open-source track.
|
||||
|
||||
The MSP and OS board files are auto-generated from `TODO.md` on startup if they
|
||||
do not already exist.
|
||||
|
||||
## HTTP API
|
||||
|
||||
| Method | Route | Description |
|
||||
| ------ | ----- | ----------- |
|
||||
| `GET` | `/` | Board index |
|
||||
| `GET` | `/{board}` | Rendered board (`msp` or `os`) |
|
||||
| `GET` | `/api/{board}/board` | Board data as JSON |
|
||||
| `POST` | `/api/{board}/cards` | Create a card |
|
||||
| `PUT` | `/api/{board}/cards/{card_id}` | Update a card |
|
||||
| `DELETE` | `/api/{board}/cards/{card_id}` | Delete a card |
|
||||
| `POST` | `/api/{board}/cards/{card_id}/move` | Move a card to another column |
|
||||
| `POST` | `/api/{board}/reload` | Reload a board from disk |
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
cargo test
|
||||
cargo clippy --all-targets --all-features -- -D warnings
|
||||
cargo fmt --check
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user