This project uses mise for managing tool versions (Terraform and Node.js).
- Consistent versions: Ensure everyone uses the same Terraform 1.9.8 and Node.js 20
- Automatic switching: Automatically use correct versions when entering directories
- Project isolation: Different projects can use different versions
- Built-in tasks: Run common commands with
mise run <task>
curl https://mise.run | shbrew install miseAdd to your shell profile (~/.bashrc, ~/.zshrc, etc.):
eval "$(mise activate bash)" # for bash
eval "$(mise activate zsh)" # for zsh# 1. Clone and enter project
cd fullstack-docusaurus-cloudfront
# 2. Trust the mise configuration
mise trust
# 3. Install all tools (Terraform + Node.js)
mise install
# 4. Verify installation
mise list
# terraform 1.9.8
# node 20.18.0- Global tools for the entire project
- Terraform 1.9.8
- Node.js 20.18.0
- Terraform-specific configuration
- Useful tasks for infrastructure management
- Node.js-specific configuration
- Useful tasks for Docusaurus development
cd infra
# Initialize Terraform
mise run init
# Plan infrastructure changes
mise run plan
# Apply changes
mise run apply
# Format Terraform files
mise run fmt
# Install Lambda dependencies
mise run lambda-installcd docs-site
# Install dependencies
mise run install
# Start development server
mise run dev
# Build for production
mise run build
# Type checking
mise run typecheckmise ensures correct versions are used:
# Terraform (automatically uses 1.9.8)
cd infra/environments/dev
terraform init
terraform plan
# Node.js (automatically uses 20.18.0)
cd docs-site
npm install
npm startForce use of mise-managed versions:
# Explicit Terraform execution
mise exec -- terraform init
mise exec -- terraform plan
# Explicit npm execution
mise exec -- npm install
mise exec -- npm run build# Show all installed tools
mise list
# Show current directory's tool versions
mise current
# Show tool installation path
mise which terraform
mise which nodeEdit .mise.toml files and run:
mise installExample:
[tools]
terraform = "1.10.0" # Update to newer version
node = "22.0.0" # Update to newer version# Reinstall tools
mise install
# Check if mise is activated in shell
which mise# Check current versions
mise current
# Ensure you've trusted the config
mise trust
# Reload shell
exec $SHELL# List all available tasks
mise tasks
# Run from correct directory
cd infra # for infrastructure tasks
cd docs-site # for docusaurus tasksYou can still use the project without mise by installing:
- Terraform 1.9.8 manually
- Node.js 20.18.0 manually
Just run commands directly without mise run or mise exec.