Improve accessibility and resolve website audit findings
This commit is contained in:
@@ -1,21 +1,63 @@
|
||||
# Napper Website
|
||||
|
||||
Source code and deployment configuration for the Napper website and application ecosystem.
|
||||
Static source for the Napper application ecosystem website, deployed at <https://napper.au> from the `napper/site` Gitea repository.
|
||||
|
||||
## Websites
|
||||
## Current products
|
||||
|
||||
- <https://napper.au>
|
||||
- <https://napper.au/hudra>
|
||||
- <https://napper.au/lildra>
|
||||
- <https://napper.au/pendra>
|
||||
- **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 in development. It is focused on removing the surrounding QLearn interface and showing lesson-page content cleanly. A `/lildra` page has not yet been added.
|
||||
- **Pendra** is planned after Lildra. A `/pendra` page has not yet been added.
|
||||
|
||||
## 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.
|
||||
|
||||
## 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 releases: <https://git.napper.au/napper/hudra/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 the conversation.
|
||||
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.
|
||||
|
||||
Important architectural, development and deployment decisions must be recorded in the repository so that future contributors and AI coding sessions inherit the correct project context.
|
||||
## Known asset work
|
||||
|
||||
## Current status
|
||||
The Napper ecosystem homepage deliberately has no favicon until a dedicated neutral Napper favicon is created. Hudra product assets must not be used as Napper ecosystem branding.
|
||||
|
||||
The repository has been created and is being prepared for the import of the existing `napper.au` website.
|
||||
<!-- authentication test -->
|
||||
|
||||
Reference in New Issue
Block a user