Pub (Dart/Flutter)
NORA acts as a caching proxy for pub.dev, the package repository for Dart and Flutter. Package archives are immutably cached with SHA256 verification. This is a proxy-only registry — publishing packages is not supported.
Client Configuration
Section titled “Client Configuration”Set the PUB_HOSTED_URL environment variable:
export PUB_HOSTED_URL=http://nora.example.com:4000/pubThen use Dart/Flutter as usual:
dart pub getflutter pub getUpstream Proxy
Section titled “Upstream Proxy”config.toml:
[pub_dart]enabled = trueproxy = "https://pub.dev"proxy_timeout = 30Environment variables:
| Variable | Description | Default |
|---|---|---|
NORA_PUB_ENABLED | Enable Pub proxy | false |
NORA_PUB_PROXY | Upstream pub registry URL | https://pub.dev |
NORA_PUB_PROXY_AUTH | Upstream auth (user:pass) | — |
NORA_PUB_PROXY_TIMEOUT | Upstream timeout in seconds | 30 |
Features
Section titled “Features”| Feature | Status | Notes |
|---|---|---|
Package search (/api/packages?q=) | Full | Response URL rewriting |
Package metadata (/api/packages/{name}) | Full | archive_url rewritten to NORA |
| Version metadata | Full | Cached |
| Security advisories | Full | Cached |
Archive download (.tar.gz) | Full | Immutable cache, SHA256 verified |
| Package publish | — | Proxy-only (read) |
Known Limitations
Section titled “Known Limitations”- Proxy-only:
dart pub publishis not supported. NORA caches packages downloaded from pub.dev. - Disabled by default. Set
NORA_PUB_ENABLED=trueto activate.