kammer/flake.nix
Christopher Mühl 4036ce6600
feat: integrate sd-card for interactive spec generation
## Changes

- Replaced forgejo-workflow with sd-card flake input
- Added `nix run .#dev` command - starts Vite with annotation proxy
- Updated dev shell with sd-card tools (tea, playwright, nodejs)

## Usage

**Start dev server with annotation widget:**
```bash
FORGEJO_TOKEN="your-token" nix run .#dev
```

Opens SvelteKit on random ports with ✦ widget injected.

**Interactive annotation with Claudezilla:**
Ask Claude to open the app in Firefox and interact naturally:
- "Open http://localhost:5173"
- "Click the add item button"
- "This should show a form"

Claude generates Gherkin scenarios from the interactive session.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-27 00:04:36 +01:00

34 lines
953 B
Nix

{
description = "solidhaus dev shell";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
sd-card.url = "git+ssh://git@git.toph.so/toph/sd-card";
};
outputs = { self, nixpkgs, flake-utils, sd-card }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
{
packages = {
# nix run .#dev — start SvelteKit dev server with annotation proxy
dev = sd-card.lib.${system}.mkDevApp {
inherit pkgs;
devCmd = "npm run dev";
devPort = 5173; # Vite default port
};
};
devShells.default = pkgs.mkShell {
packages = sd-card.packages.${system}.tools # tea, jq, playwright, nodejs
++ (with pkgs; [
nodejs
nodePackages.npm
]);
};
}
);
}