mirror of
https://github.com/kristoferssolo/axum-template.git
synced 2025-10-21 17:20:35 +00:00
84 lines
1.3 KiB
Makefile
84 lines
1.3 KiB
Makefile
set dotenv-load
|
|
|
|
PROJECT_NAME := "{{project-name}}"
|
|
|
|
# List all available commands
|
|
default:
|
|
@just --list
|
|
|
|
# Format code
|
|
fmt:
|
|
cargo fmt
|
|
|
|
# Lint code
|
|
lint:
|
|
cargo clippy -- -D warnings
|
|
|
|
# Run tests
|
|
test:
|
|
cargo test
|
|
|
|
# Build the application (debug)
|
|
build:
|
|
cargo build
|
|
|
|
# Build the application (release)
|
|
build-release:
|
|
cargo build --release
|
|
|
|
# Run the application (debug)
|
|
run:
|
|
cargo run
|
|
|
|
# Run the application (release)
|
|
run-release:
|
|
cargo run --release
|
|
|
|
# Run migrations
|
|
migrate:
|
|
cargo sqlx migrate run
|
|
|
|
# Revert migrations
|
|
migrate-revert:
|
|
cargo sqlx migrate revert
|
|
|
|
# Create a new migration
|
|
migrate-create name:
|
|
cargo sqlx migrate add $(name)
|
|
|
|
# Check migrations
|
|
migrate-status:
|
|
cargo sqlx migrate status
|
|
|
|
# Watch for changes and run tests/linting/run (for development)
|
|
dev:
|
|
cargo watch -x clippy -x test -x run | bunyan
|
|
|
|
# Build, migrate, and run (release)
|
|
deploy:
|
|
just build-release
|
|
just migrate
|
|
just run-release
|
|
|
|
# Generate documentation
|
|
doc:
|
|
cargo doc --open
|
|
|
|
# Clean the project
|
|
clean:
|
|
cargo clean
|
|
|
|
# Analyze binary size
|
|
analyze-size:
|
|
cargo build --release
|
|
cargo install cargo-bloat
|
|
cargo bloat --release --all-features --crates
|
|
|
|
# Check dependencies for security vulnerabilities
|
|
audit:
|
|
cargo audit
|
|
|
|
# Check for outdated dependencies
|
|
outdated:
|
|
cargo outdated
|