Files
sta/nix/shell.nix
Lucien Cartier-Tilet 837a49fc58 refactor: reorganize project into monorepo with frontend scaffolding
Convert project from single backend to monorepo structure with separate
frontend (Vue 3 + TypeScript + Vite) and backend directories. Updates
all configuration files and build system to support both workspaces.

Ref: T007 (specs/001-modbus-relay-control)
2026-01-22 00:57:10 +01:00

59 lines
1.3 KiB
Nix

{
inputs,
pkgs,
self,
rustVersion,
system,
...
}:
inputs.devenv.lib.mkShell {
inherit inputs pkgs;
modules = [
{
packages = with pkgs; [
# Backend
(rustVersion.override {
extensions = [
"clippy"
"rust-src"
"rust-analyzer"
"rustfmt"
];
})
bacon
cargo-deny
cargo-edit
cargo-shuttle
cargo-tarpaulin
just
marksman # Markdown LSP server
sqlx-cli
tombi # TOML LSP server
# Frontend
nodejs_24
rustywind # tailwind
nodePackages.prettier
nodePackages.eslint
nodePackages.pnpm
];
processes.run.exec = "bacon run";
enterShell = ''
echo "🦀 Rust MCP development environment loaded!"
echo "📦 Rust version: $(rustc --version)"
echo "📦 Cargo version: $(cargo --version)"
echo ""
echo "Available tools:"
echo " - rust-analyzer (LSP)"
echo " - clippy (linter)"
echo " - rustfmt (formatter)"
echo " - bacon (continuous testing/linting)"
echo " - cargo-deny (dependency checker)"
echo " - cargo-tarpaulin (code coverage)"
'';
}
];
}