CLI API¶
This page documents the command-line interface functions and classes.
CLI Commands¶
The CLI commands are implemented as Click commands that integrate with Quart's CLI system.
assets¶
quart_assets.extension.assets()
¶
Quart Assets commands.
Source code in src/quart_assets/extension.py
387 388 389 | |
build¶
quart_assets.extension.build(info)
¶
Build bundles.
Source code in src/quart_assets/extension.py
392 393 394 395 396 | |
clean¶
quart_assets.extension.clean(info)
¶
Clean bundles.
Source code in src/quart_assets/extension.py
399 400 401 402 403 | |
watch¶
quart_assets.extension.watch(info)
¶
Watch bundles for file changes.
Source code in src/quart_assets/extension.py
406 407 408 409 410 | |
Helper Functions¶
_webassets_cmd¶
quart_assets.extension._webassets_cmd(cmd, info)
¶
Helper to run a webassets command.
Source code in src/quart_assets/extension.py
361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 | |
Usage Examples¶
Basic Command Usage¶
# Show help for all asset commands
python -m quart assets --help
# Build all asset bundles
python -m quart assets build
# Clean generated assets
python -m quart assets clean
# Watch for changes and rebuild automatically
python -m quart assets watch
Environment Configuration¶
# Set the Quart application
export QUART_APP=myapp.py
# Set environment
export QUART_ENV=production
# Run commands
python -m quart assets build
Application Factory¶
# For application factory pattern
export QUART_APP="myapp:create_app"
python -m quart assets build
Programmatic Usage¶
While the CLI commands are typically used from the command line, you can also access the underlying functionality programmatically:
from quart_assets.extension import _webassets_cmd
from quart.cli import ScriptInfo
# Create script info (normally done by Quart CLI)
info = ScriptInfo(name='myapp')
# Run commands programmatically
_webassets_cmd('build', info)
_webassets_cmd('clean', info)
Error Handling¶
The CLI commands include error handling for common issues:
- Application not found: Ensures
QUART_APPis set correctly - Assets environment missing: Verifies
QuartAssetsis initialized - File permission errors: Provides clear error messages
- Import errors: Handles missing dependencies gracefully
Integration¶
CI/CD Pipelines¶
Example usage in continuous integration:
# .github/workflows/build.yml
- name: Build assets
run: python -m quart assets build
env:
QUART_APP: myapp.py
QUART_ENV: production
Docker¶
Example Dockerfile integration:
# Build assets during image build
RUN QUART_APP=myapp.py python -m quart assets build
# Or build at runtime
CMD ["sh", "-c", "python -m quart assets build && python -m quart run"]
Development Scripts¶
Example development script:
#!/bin/bash
# dev.sh
export QUART_APP=myapp.py
export QUART_ENV=development
# Build assets
python -m quart assets build
# Start development server
python -m quart run --debug
Next Steps¶
- CLI Commands Guide - Detailed CLI usage guide
- Configuration - Configure CLI behavior
- Examples - See CLI in action