Something went wrong. Try again.
🧊 a minimal registry for JavaScript packages
Something went wrong. Try again.
Files
- Rust 82%
- Nix 18%
README.md
Tessera #
A minimal registry for JavaScript packages.

Development #
nix develop -c $SHELL
cargo watch -x run
Example #
Running the registry #
TESSERA_TOKEN=secret-token cargo run
Using the registry #
You can also just use the --registry flag, but the examples assume you have an .npmrc for simplicity.
printf '%s\n' 'registry=http://localhost:3000/' '//localhost:3000/:_authToken=secret-token' > .npmrc
Publishing #
mkdir my-package && cd my-package && npm init -y
npm publish
Installing #
npm view my-package
npm install my-package
Configuration #
| Name | Description | Default |
|---|---|---|
TESSERA_ADDR |
bind address | 127.0.0.1 |
TESSERA_PORT |
port | 3000 |
TESSERA_DATA_DIR |
data directory | data |
TESSERA_TOKEN |
publish token | (required) |
TESSERA_PUBLIC_URL |
public base URL | http://<addr>:<port> |
RUST_LOG |
log filter | info |
NixOS #
A default/tessera nixosModules is provided
{
inputs.tessera.url = "git+https://tangled.org/drainpixie.xyz/tessera";
imports = [inputs.tessera.nixosModules.default];
services.tessera = {
enable = true;
env-file = config.age.secrets.tessera-environment.path;
host = "127.0.0.1";
port = 3000;
data-dir = "/var/lib/tessera";
hostname = "https://tessera.drainpixie.xyz";
user = "tessera";
group = "tessera";
};
}
Architecture #
- Rust
- Nix