Anime library manager monorepo.
apps/api- Bun + Effectapps/web- SolidJS frontendpackages/shared- shared transport/types
- runtime and task runner:
bun - workspace config:
package.jsonworkspaces - dependencies are installed with Bun
From the repo root:
bun run dev
bun run dev:api
bun run dev:web
bun run check
bun run test
bun run build
bun run lintAPI checks:
bun run check:api
bun run lint:api
bun run --cwd apps/api check
bun run --cwd apps/api test
bun run --cwd apps/api lintWeb checks:
bun run check:web
bun run lint:web
bun run --cwd apps/web build
bun run --cwd apps/web check
bun run --cwd apps/web lintThis repo now exposes a Bun-based package and a NixOS module from flake.nix.
Build and run locally:
nix build .#bakarr
nix run .#bakarr-apiInspect flake outputs:
nix flake showImport the module and enable the service:
{
imports = [ inputs.bakarr.nixosModules.bakarr ];
services.bakarr = {
enable = true;
port = 8000;
openFirewall = true;
environment = {
BAKARR_BOOTSTRAP_USERNAME = "admin";
SESSION_COOKIE_SECURE = false;
};
};
}The systemd service stores state under /var/lib/bakarr by default and sets
DATABASE_FILE=/var/lib/bakarr/bakarr.sqlite.
- API uses SQLite/Drizzle migrations under
apps/api/drizzle - frontend talks to the API using contracts from
packages/shared - root
.gitignoreexcludes local env files, build logs, and SQLite artifacts