73 lines
1.9 KiB
Makefile
73 lines
1.9 KiB
Makefile
# Makefile for Strudel development
|
|
# This Makefile acts as a proxy for nix develop commands
|
|
|
|
.PHONY: help install dev build test lint format check clean shell submodules-init submodules-update update
|
|
|
|
# Default target
|
|
help:
|
|
@echo "Strudel Development Makefile"
|
|
@echo ""
|
|
@echo "Available targets:"
|
|
@echo " help - Show this help message"
|
|
@echo " update - Initialize and update git submodules"
|
|
@echo " install - Install dependencies (pnpm install)"
|
|
@echo " dev - Start development server (pnpm dev)"
|
|
@echo " build - Build the project (pnpm build)"
|
|
@echo " test - Run tests (pnpm test)"
|
|
@echo " lint - Run linter (pnpm lint)"
|
|
@echo " format - Format code (pnpm codeformat)"
|
|
@echo " check - Run all checks (pnpm check)"
|
|
@echo " clean - Clean build artifacts"
|
|
@echo " shell - Enter Nix development shell"
|
|
@echo ""
|
|
@echo "All commands run within the Nix development environment."
|
|
|
|
# Install dependencies
|
|
install:
|
|
nix develop --command "cd src && pnpm install"
|
|
|
|
# Start development server
|
|
dev:
|
|
nix develop --command "cd src && pnpm dev"
|
|
|
|
# Build the project
|
|
build:
|
|
nix develop --command "cd src && pnpm build"
|
|
|
|
# Run tests
|
|
test:
|
|
nix develop --command "cd src && pnpm test"
|
|
|
|
# Run linter
|
|
lint:
|
|
nix develop --command "cd src && pnpm lint"
|
|
|
|
# Format code
|
|
format:
|
|
nix develop --command "cd src && pnpm codeformat"
|
|
|
|
# Run all checks
|
|
check:
|
|
nix develop --command "cd src && pnpm check"
|
|
|
|
# Clean build artifacts
|
|
clean:
|
|
nix develop --command "cd src && pnpm clean 2>/dev/null || true"
|
|
rm -rf src/node_modules/.cache 2>/dev/null || true
|
|
rm -rf src/dist 2>/dev/null || true
|
|
|
|
# Initialize submodules
|
|
submodules-init:
|
|
git submodule init
|
|
|
|
# Update submodules
|
|
submodules-update:
|
|
git submodule update
|
|
|
|
# Initialize and update submodules
|
|
update:
|
|
git submodule init && git submodule update
|
|
|
|
# Enter Nix development shell
|
|
shell:
|
|
nix develop
|