Removed unnecessary packages and template metadata from initialized projects:
- Removed TypeScript from vanilla template (not used)
- Removed template.nix from both templates (only needed in repo, not projects)
- Updated flake.nix in templates to only import devshell.nix
Templates now provide minimal, focused development environments.
The root flake only defines templates. Each template (templates/vanilla/
and templates/nextjs/) contains its own complete Nix configuration with
devshell, so root-level development environment is unnecessary.
Moved template directories into templates/ subdirectory (templates/vanilla/
and templates/nextjs/) with complete Nix configuration in each. This ensures
initialized projects have the full development environment with Nix, Bun,
and all tooling out of the box.
Changes:
- Created templates/vanilla/ with flake.nix, nix/, .envrc, and all files
- Created templates/nextjs/ with flake.nix, nix/, .envrc, and all files
- Updated template paths in nix/modules/template.nix
Users will generate their own lockfile on first install. This avoids
binary file issues with omnix text substitution and ensures fresh
dependency resolution.
Prevents "stream did not contain valid UTF-8" errors during template
initialization. The binary lockfile doesn't need text substitution and
should be copied as-is.
Restructure project to support multiple templates via Nix flakes and omnix.
Users can now choose between vanilla JavaScript or Next.js TypeScript
templates during initialization.
- Move existing template to templates/vanilla/
- Add templates/nextjs/ with App Router, TypeScript, and React 19
- Update flake.nix for multi-template outputs
- Add TypeScript support to shared devshell
- Preserve FHS compatibility for both templates
- Update README with comprehensive template comparison and usage
- Add Node.js to devshell for mature, stable REPL
- Create .replrc.js with println() and dir() helpers
- Add 'just repl' command with auto-loaded helpers
- Add 'just add-dev' and 'just remove' for package management
- Update README with complete command reference and feature list
Features:
- Nix + Flakes for reproducible environments
- Bun (fast JavaScript runtime)
- Vite (development server & build tool)
- ESLint + Prettier (linting & formatting)
- Devshell commands via just
- Modular structure using flake-parts
- Omnix template support for initialization