# weave-content
Content DSL parser, validator, and builder for OSINT case files.
Part of the [Weave](https://github.com/redberrythread/weave) workspace.
## Install
```bash
cargo install weave-content
```
## Commands
- `weave-content validate` -- parse and validate case files and entity files
- `weave-content verify` -- check all URLs in case files (HEAD/GET with concurrency)
- `weave-content build` -- generate JSON output and write back generated NULIDs to source files
## Content Structure
```
content/
actors/ # shared actor entity files
institutions/ # shared institution entity files
cases/
2025/
football/ # case files (events, relationships, timeline)
```
Entity files use YAML front matter with an optional `id:` field (auto-generated on first build) and Markdown body with bullet-list fields.
Case files reference shared entities by name in `## Relationships` and `## Timeline` sections.
## Usage
```bash
# validate all files under a content root
weave-content validate --root content/
# verify all URLs
weave-content verify --root content/
# build JSON output (generates and writes back NULIDs)
weave-content build --root content/
```
## License
MIT