# ASW-Hugo Pack
A Hugo theme that outputs pure [Agentic Semantic Web (ASW)](https://trentuna.com/asw/) semantic HTML with `data-*` attributes. Drop it into any Hugo project → content renders through ASW.
## What this is
This pack is an **ASW adapter for Hugo** — not a standalone theme. It makes Hugo output the semantic HTML + data-attribute vocabulary that ASW CSS understands.
```
Markdown vault (Git)
→ Hugo + ASW-Hugo pack (layouts emit ASW HTML)
→ static HTML with ASW CSS + data-* attributes
→ deploy anywhere
```
Long-term: trentuna will build a native ASW Site Builder. This pack is the bridge to alpha.
## Install
1. Copy or symlink `packs/hugo/` from the ASW repo into your project's `themes/` directory:
```bash
# From the agentic-semantic-web repo root:
cp -r packs/hugo/ /path/to/your-site/themes/asw-hugo/
# or symlink:
ln -s /path/to/agentic-semantic-web/packs/hugo/ /path/to/your-site/themes/asw-hugo
```
2. Add to your `hugo.toml`:
```toml
theme = "asw-hugo"
[taxonomies]
tag = "tags"
```
3. Copy ASW CSS into the theme's static directory:
```bash
cp /path/to/agentic-semantic-web/asw.css themes/asw-hugo/static/css/asw.css
```
> **Note:** `asw.css` is the `asw.css` file from the ASW repo root. B.A.'s deploy script handles this copy automatically for trentuna-web deployments.
4. **Self-host fonts** (recommended for production): The default `theme.css` imports Inter and
JetBrains Mono from Google Fonts. For self-hosted deployment, download the font files and
replace the `@import` in `static/css/theme.css` with local `@font-face` declarations.
See [google-webfonts-helper](https://gwfh.mranftl.com/) for font download.
## Usage
Write standard Markdown. Hugo renders it through ASW layouts automatically.
### Shortcodes
**Callout block:**
```
{{< callout note >}}
This is a note callout. Types: note, warning, tip, info
{{< /callout >}}
```
Renders as: ``
**Wikilink:**
```
{{< wikilink "Page Name" "/path/to/page/" >}}
```
Renders as: `Page Name`
### ASW data-* vocabulary used
See `docs/agent-directive.md` in the ASW repo for the full vocabulary.
| Attribute | Where used | Meaning |
|-----------|-----------|---------|
| `data-callout="note\|warning\|tip\|info"` | `