Initial sow-tools import
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
# sow-tools
|
||||
|
||||
Shared NWN build tooling for Shadows Over Westgate.
|
||||
|
||||
This repository owns the Go-based `nwn-tool` binary used by the separate module and assets repositories.
|
||||
|
||||
## Build
|
||||
|
||||
Build the development binary into `tools/nwn-tool`:
|
||||
|
||||
```bash
|
||||
./build-tool.sh
|
||||
```
|
||||
|
||||
Or run directly with Go:
|
||||
|
||||
```bash
|
||||
GOCACHE="$PWD/.cache/go-build" go run ./cmd/nwn-tool --help
|
||||
```
|
||||
|
||||
## Repository Layout
|
||||
|
||||
```text
|
||||
cmd/nwn-tool/ CLI entrypoint
|
||||
internal/app/ command wiring and console UX
|
||||
internal/erf/ ERF/MOD/HAK reading and writing
|
||||
internal/gff/ canonical GFF JSON and binary conversion
|
||||
internal/pipeline/ build, extract, compare, and manifest workflows
|
||||
internal/project/ config loading and repo scanning
|
||||
internal/validator/validation and diagnostics
|
||||
tools/ built development binary output
|
||||
```
|
||||
|
||||
## Intended Consumers
|
||||
|
||||
- `sow-module` uses `nwn-tool` for `build-module`, `extract`, `validate`, `compare`, and `apply-hak-manifest`
|
||||
- `sow-assets` uses `nwn-tool` for `build-haks` and validation
|
||||
|
||||
During development, sibling repositories can point at `../sow-tools/tools/nwn-tool`. For pinned releases, each consumer repo can instead carry its own copy at `tools/nwn-tool`.
|
||||
Reference in New Issue
Block a user