Starter template for new QQQ applications.
For: Developers starting a new QQQ project from scratch
Status: Stable
Starting a QQQ application requires boilerplate: Maven configuration, entity definitions, database migrations, authentication setup, and dashboard integration. This template provides a working starting point with a simple order-management domain.
- Sample Entities - Customer, Product, Order, OrderLine
- Database Migrations - Liquibase schema and seed data
- Authentication - Mock auth for development
- Dashboard - Material Dashboard served at
/ - API - REST endpoints at
/qqq-api/
- Java 21+
- Maven 3.8+
- PostgreSQL (or use included Docker setup)
# Clone template
git clone https://github.com/QRun-IO/new-qqq-application-template.git my-app
cd my-app
# Customize package names and metadata
python3 scripts/customize_template.py
# Build
mvn clean package -DskipTests# Using Docker
docker compose -f src/test/resources/postgres/docker-compose.yml up -d
# Or use existing PostgreSQL
export RDBMS_HOSTNAME=localhost
export RDBMS_PORT=5432
export RDBMS_DATABASE_NAME=qqq_orders
export RDBMS_USERNAME=devuser
export RDBMS_PASSWORD=devpass# Apply migrations
mvn liquibase:update
# Start server
java -jar target/new-qqq-application-template.jarOpen http://localhost:8000/ for the dashboard.
| Variable | Default | Description |
|---|---|---|
RDBMS_VENDOR |
postgresql | Database type |
RDBMS_HOSTNAME |
localhost | Database host |
RDBMS_PORT |
5432 | Database port |
RDBMS_DATABASE_NAME |
qqq_orders | Database name |
RDBMS_USERNAME |
devuser | Database user |
RDBMS_PASSWORD |
devpass | Database password |
# Uses H2 in-memory database
mvn test- Create entity class in
src/main/java/<package>/entity/ - Add Liquibase migration in
src/main/resources/db/liquibase/ - Register entity in MetaProvider
- Create process class in
src/main/java/<package>/process/ - Implement
BackendStepinterface - Register process in MetaProvider
Migrations are in src/main/resources/db/liquibase/. Add new changesets for schema changes.
Mock auth is configured for development. Replace with your auth provider for production.
Update src/main/resources/ for logos and styling.
Stable template. Updated with each QQQ release.
- Fork the repository
- Create a feature branch
- Submit a pull request
Apache-2.0 - See LICENSE for details.