128 lines
2.4 KiB
Makefile
128 lines
2.4 KiB
Makefile
# Svelte 5 Static Template Justfile
|
|
# Uses nushell for cross-platform compatibility
|
|
|
|
set shell := ["nu", "-c"]
|
|
|
|
# Default recipe - show available commands
|
|
default:
|
|
just --list
|
|
|
|
# Install dependencies
|
|
install:
|
|
bun install
|
|
|
|
# Start development server
|
|
dev:
|
|
bun run dev
|
|
|
|
# Build for production
|
|
build:
|
|
bun run build
|
|
|
|
# Preview production build
|
|
preview:
|
|
bun run preview
|
|
|
|
# Run all tests
|
|
test:
|
|
bun run test
|
|
|
|
# Run unit tests only
|
|
test-unit:
|
|
bun run test:unit
|
|
|
|
# Run E2E tests only
|
|
test-e2e:
|
|
bun run test:e2e
|
|
|
|
# Install Playwright browsers
|
|
install-browsers:
|
|
bunx playwright install
|
|
|
|
# Install Playwright system dependencies (requires sudo)
|
|
install-deps:
|
|
bunx playwright install-deps
|
|
|
|
# Run tests in watch mode
|
|
test-watch:
|
|
bun run test:unit --watch
|
|
|
|
# Lint code
|
|
lint:
|
|
bun run lint
|
|
|
|
# Format code
|
|
format:
|
|
bun run format
|
|
|
|
# Type check
|
|
check:
|
|
bun run check
|
|
|
|
# Clean build artifacts and dependencies
|
|
clean:
|
|
rm -rf build .svelte-kit node_modules
|
|
|
|
# Fresh install - clean and reinstall everything
|
|
fresh: clean install
|
|
|
|
# Add shadcn-svelte component
|
|
[positional-arguments]
|
|
add-component component:
|
|
bunx shadcn-svelte@latest add {{component}}
|
|
|
|
# Docker commands
|
|
docker-build:
|
|
docker build -t svelte-static-app .
|
|
|
|
# Run Docker container
|
|
docker-run:
|
|
docker run -p 3000:80 svelte-static-app
|
|
|
|
# Docker Compose up
|
|
docker-up:
|
|
docker-compose up --build
|
|
|
|
# Docker Compose down
|
|
docker-down:
|
|
docker-compose down
|
|
|
|
# Build and run with Docker Compose
|
|
docker: docker-up
|
|
|
|
# Development setup - install deps and start dev server
|
|
setup: install dev
|
|
|
|
# Production deployment - build and run in Docker
|
|
deploy: build docker-build docker-run
|
|
|
|
# CI/CD pipeline simulation - run all checks
|
|
ci: lint check test build
|
|
|
|
# Show project info
|
|
info:
|
|
echo "🚀 Svelte 5 Static Template"
|
|
echo "📦 Package manager: bun"
|
|
echo "🏗️ Framework: SvelteKit with static adapter"
|
|
echo "🎨 UI: shadcn-svelte + Tailwind CSS"
|
|
echo "📝 Language: TypeScript"
|
|
echo ""
|
|
echo "📊 Project stats:"
|
|
find src -name "*.svelte" -o -name "*.ts" -o -name "*.js" | wc -l | $"($in) source files"
|
|
ls src/lib/components/ui | wc -l | $"($in) UI components"
|
|
|
|
# Update all dependencies
|
|
update:
|
|
bun update
|
|
|
|
# Security audit
|
|
audit:
|
|
bun audit
|
|
|
|
# Generate build report
|
|
report:
|
|
bun run build --reporter=verbose
|
|
echo ""
|
|
echo "📦 Build artifacts:"
|
|
ls -la build/
|