summaryrefslogtreecommitdiff
path: root/modules/templates/web/flake.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/templates/web/flake.nix')
-rw-r--r--modules/templates/web/flake.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/modules/templates/web/flake.nix b/modules/templates/web/flake.nix
new file mode 100644
index 0000000..bfa8dce
--- /dev/null
+++ b/modules/templates/web/flake.nix
@@ -0,0 +1,47 @@
+{
+ description = "Base development environment for modern web development";
+
+ inputs = {
+ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+ flake-utils.url = "github:numtide/flake-utils";
+ };
+
+ outputs = {
+ self,
+ nixpkgs,
+ flake-utils,
+ }:
+ flake-utils.lib.eachDefaultSystem (system: let
+ pkgs = nixpkgs.legacyPackages.${system};
+ in {
+ devShells.default = pkgs.mkShell {
+ packages = with pkgs; [
+ nodejs_24
+ nodePackages.pnpm
+ bun
+ typescript
+ typescript-language-server
+ biome
+ nodePackages.prettier
+ nodePackages.vscode-langservers-extracted
+ ];
+
+ shellHook = ''
+ echo "Node $(node --version)"
+ echo "npm $(npm --version)"
+ echo "pnpm $(pnpm --version)"
+ echo "bun $(bun --version)"
+
+ echo
+ echo "Included tools:"
+ echo " • Node.js"
+ echo " • pnpm"
+ echo " • Bun"
+ echo " • TypeScript"
+ echo " • Biome"
+ echo " • Prettier"
+ echo " • HTML/CSS/JSON Language Server"
+ '';
+ };
+ });
+}