# Napper Website

Static source for the Napper application ecosystem website, deployed at <https://napper.au> from the `napper/site` Gitea repository.

## Current products

- **Hudra** is available at <https://napper.au/hudra>. It turns complete QLearn lesson pages into a presentation or slide-style classroom teaching experience.
- **Lildra** is available at <https://napper.au/lildra>. It gives supported Canvas and QLearn lesson pages a distraction-free reading view while preserving their original content and styling.

## Site structure

The site uses static HTML, CSS and JavaScript without a framework, package manager, build system or templating engine.

```text
/
├── index.html                  Napper ecosystem homepage
├── css/
│   ├── napper.css              Napper homepage styles
│   ├── hudra.css               Hudra product and shared Hudra styles
│   └── hudra-legal.css         Hudra support and legal-page styles
├── js/
│   ├── napper.js               Napper homepage behaviour
│   └── hudra.js                Hudra page behaviour
├── img/                        Hudra image assets
└── hudra/
    ├── index.html              Hudra product page
    ├── support/index.html      Hudra support
    ├── privacy/index.html      Hudra privacy policy
    └── terms/index.html        Hudra terms of use
```

The HTML uses root-relative asset and navigation paths. Opening pages directly with `file://` or serving the repository beneath a URL subpath will not reproduce production routing. Local previews should use a static server configured with this repository as its web root and with directory-index handling enabled.

Lildra mirrors Hudra's product structure under `lildra/`, with its landing page plus `support/`, `privacy/` and `terms/` directory pages. Its product JavaScript and theme styles live in `js/lildra.js`, `css/lildra.css` and `css/lildra-legal.css`.

## URLs and external services

- Production site: <https://napper.au>
- Canonical QLearn URL: <https://qlearn.eq.edu.au>
- Canonical Gitea organisation: <https://git.napper.au/napper>
- Hudra on the Chrome Web Store: <https://chromewebstore.google.com/detail/hudra/bjggdeecklhnpebgmjiaedaadmpdoddm>
- Hudra on Microsoft Edge Add-ons: <https://microsoftedge.microsoft.com/addons/detail/hudra/aogdgaofdldbpmkjknklojbhcbcfandb>
- Lildra on the Chrome Web Store: <https://chromewebstore.google.com/detail/lildra/plgcccpjkfeimphghbpojjmibmajgocp>
- Lildra on Microsoft Edge Add-ons: <https://microsoftedge.microsoft.com/addons/detail/lildra/lecbknefoekmfockhhkjopjgkoepdbnh>
- Hudra releases: <https://git.napper.au/napper/hudra/releases>
- Lildra releases: <https://git.napper.au/napper/lildra/releases>

Production supports clean directory URLs. For example, `/hudra/privacy` serves `hudra/privacy/index.html` without requiring `index.html` in the public URL.

## Deployment

Deployment occurs automatically after a push to `main`:

1. Gitea sends a signed webhook to the CloudPanel server.
2. `dploy` creates a release from the repository state.
3. `dploy` switches the site's `current` symlink to the new release.
4. CloudPanel serves `/home/napper/htdocs/napper.au/current` as the document root for `napper.au`.

The production document-root and directory-index arrangement are therefore part of the site's routing assumptions.

## Repository philosophy

The repository is the source of truth, not individual conversations. Important architectural, development and deployment decisions must be recorded here or in `AGENTS.md` so that future contributors inherit the correct context.

## Brand assets

Napper uses its own blue six-sided `N` logo and favicon family under `img/NapperLogo*.png`. Hudra and Lildra retain their distinct product logos and favicons.

<!-- authentication test -->
