Rustelo/justfiles/build.just

92 lines
3.3 KiB
Text
Raw Normal View History

2026-02-08 20:18:46 +00:00
# =============================================================================
# BUILD SYSTEM COMMANDS - Rustelo Framework
# =============================================================================
# Enhanced build tools and cross-platform building
# Build CSS bundles
build-css-bundles:
@echo "🎨 Building CSS bundles..."
node ./scripts/build/build-css-bundles.js
# Build design system
build-design-system:
@echo "🎨 Building design system..."
node ./scripts/build/build-design-system.js
# Build theme system
build-theme:
@echo "🎨 Building theme system..."
node ./scripts/build/build-theme.js
# Copy CSS assets to public directory
copy-css-assets:
@echo "🎨 Copying CSS assets..."
node ./scripts/build/copy-css-assets.js
# Build for production with enhanced Leptos build
build-enhanced-prod:
@echo "🔨 Building enhanced production version..."
./scripts/build/leptos-build.sh
# Cross-platform Docker build
build-cross-platform:
@echo "🐳 Building for cross-platform deployment..."
./scripts/build/build-docker-cross.sh
# Pack project for distribution
dist-pack:
@echo "📦 Packing project for distribution..."
./scripts/dist-pack.sh
# Cross-build for Linux AMD64
cross-build:
@echo "📦 Cross-building for Linux AMD64..."
./scripts/cross-build.sh
# Build all assets (CSS + JS + themes)
build-all-assets:
@echo "🎨 Building all frontend assets..."
@just build-css-bundles
@just build-design-system
@just build-theme
2026-02-08 20:37:49 +00:00
@just copy-css-assets
2026-07-18 20:14:32 +01:00
# =============================================================================
# DEPENDENCY SYNC - registry/Cargo.toml → workspace.dependencies
# =============================================================================
# `registry/Cargo.toml` is the single source of truth (editable in Zed via
# rust-analyzer's inline upgrade hints). These recipes propagate it to
# `rustelo/Cargo.toml` and to any implementation workspace.
# Propagate the registry into rustelo's own Cargo.toml managed region.
deps-sync:
@echo "🔗 Syncing rustelo/Cargo.toml from registry/Cargo.toml..."
cargo xtask sync-deps
# Verify rustelo/Cargo.toml matches the registry (exit 1 if drifted).
deps-sync-check:
@echo "🔍 Checking rustelo/Cargo.toml for drift from registry..."
cargo xtask sync-deps --check
# Propagate the registry into an implementation workspace.
# Example: just deps-sync-impl ../jpl-website
deps-sync-impl target:
@echo "🔗 Syncing {{target}}/Cargo.toml from registry/Cargo.toml..."
cargo xtask sync-deps --target {{target}}
# Verify an implementation's Cargo.toml matches the registry (exit 1 if drifted).
deps-sync-check-impl target:
@echo "🔍 Checking {{target}}/Cargo.toml for drift from registry..."
cargo xtask sync-deps --check --target {{target}}
# Sync rustelo + every implementation declared in registry/sync.toml [impls.known].
# Adding a new implementation is a registry/sync.toml edit — no recipe change needed.
deps-sync-all:
@echo "🔗 Syncing rustelo + every known implementation..."
cargo xtask sync-deps --all
# Verify rustelo + every implementation matches the registry (exit 1 if any drifts).
deps-sync-check-all:
@echo "🔍 Checking rustelo + every known implementation for drift..."
cargo xtask sync-deps --check --all