// CONFIGURATION ENGINE

Configure anything. In plain English.

Product rules written like sentences, not spreadsheet formulas. One DSL defines your configuration, pricing, materials, and manufacturing workflow.

001
001 // THE DSL

Rules written like sentences.

Most configurators trap your product logic in database tables, drag-and-drop builders, or proprietary formats you can't version, diff, or extend. When the rules get complex, the tool breaks down.

Painless uses a purpose-built DSL refined over 10 years of real manufacturing deployments. Your product rules read like plain English. They're version-controlled like code. And they handle thousands of interdependent options without flinching.

One file defines everything: the dealer-facing form, validation constraints, pricing logic, bill of materials, raw material consumption, and shop floor work instructions. Change the rule once — it flows everywhere.

Version-controlled — diff, review, and roll back like code
Human-readable — your team can understand the rules, not just developers
Endlessly extensible — no ceiling on complexity
product.dsl
step "Configuration" do
  field :width do
    type Numeric
    required true
    input do
      label "Width"
      component "fractional-dimension"
    end
    check do
      condition -> { width.present? }
      constraint -> { width >= 28.0 }
      message "Minimum width is 28\"."
    end
  end

  field :screen_color do
    type String
    options do
      choice "Charcoal"
      choice "Sand"
    end
  end
end

computed do
  field :base_price do
    PriceTable.lookup("Motorized",
      x: width, y: height)
  end
end
002
002 // WHAT IT POWERS

One DSL drives your entire operation.

Configuration, pricing, materials, and manufacturing instructions — all defined in a single source of truth. Change a rule once and it flows to every system that depends on it.

Dynamic Forms

Multi-step configuration forms generated from the DSL. Fields appear, hide, and change options based on prior selections. Supports fractional dimensions, feet-inches inputs, radio groups, dropdowns, and computed defaults.

Constraint Validation

Invalid configurations are blocked before they're submitted. Cross-field dependency checks run in real time. When a dimension exceeds its limit, the engine identifies every impacted field and tells the dealer exactly what to fix.

Pricing & BOM

Prices recalculate as the dealer configures. 2D price table lookups, conditional surcharges, dealer-specific discounts, and multi-item bill of materials — all computed in real time from the same DSL that defines the product.

Materials & Inventory

Raw material requirements calculated from the configuration. Fabric area with waste factors, tube lengths, motor assemblies — each tied to SKUs with unit-of-measure tracking. Inventory reservations are created automatically at order placement.

Manufacturing Workflow

Work instructions generated from the product definition. Cutting stations, assembly cells, motor wiring — each with time estimates, material consumption, dependencies, and step-by-step instructions interpolated with the actual configuration values.

Order Summary

Clean, grouped summaries for confirmation and documentation. Dimension groups, motorization details, accessories — each with conditional visibility so dealers only see what's relevant to their configuration. Values are formatted and computed automatically.

003
003 // HOW IT WORKS

Real-time evaluation. Every keystroke.

When a dealer changes a field, the entire product model re-evaluates instantly. No batch processing, no save-and-wait. The pipeline runs end-to-end in milliseconds.

01

Form Input

Dealer selects options, enters dimensions. Type casting and defaults applied.

02

Compute & Validate

Computed fields resolve. Constraints check cross-field dependencies. Errors surface instantly.

03

Price & Build BOM

Price tables queried, surcharges applied, BOM assembled. Materials and waste factors calculated.

04

Generate Workflow

Work cells activate, instructions interpolate, time estimates calculate. Ready for the shop floor.

< 100ms end-to-end
004
004 // BUILT FOR MANUFACTURERS

Not another generic configurator.

Generic CPQ tools were built for software bundles and subscription tiers. Painless was built for products with dimensions, materials, and manufacturing constraints.

BEFORE

Pricing rules in spreadsheets

Nested IF formulas, VLOOKUP chains, and conditional formatting that only one person understands. Break a cell reference and pricing is wrong for weeks.

PAINLESS

Price tables and rules in plain language

2D price grids with named axes. Surcharges defined as readable conditions. Every dealer sees live pricing as they configure — no manual quotes.

BEFORE

Configuration disconnected from production

Dealers order from a catalog. Someone in the office re-enters the spec into the production system. Details get lost. Wrong products get built.

PAINLESS

Configuration IS the work order

The same DSL that generates the dealer form also generates cut lists, assembly instructions, and material requirements. Zero re-keying. Zero interpretation.

BEFORE

Validation by tribal knowledge

Your best estimator catches errors because they've been doing it for 20 years. When they're out, bad orders go through. When they retire, the knowledge walks out the door.

PAINLESS

Constraints encoded in the product model

Maximum width depends on installation type? The DSL knows. Motor X isn't compatible with housing Y? It's a constraint, not a sticky note. Dealers can't order what you can't build.

005
005 // AI-NATIVE

Built for the AI era.

Most product configurators store logic in opaque database blobs or drag-and-drop canvases that AI can't parse. Our DSL is structured, human-readable text — exactly the format large language models understand best.

The engine exposes a full introspection API: parse product models, validate rule integrity, simulate configurations, and analyze pricing — all programmatically. This means AI assistants can answer product questions, suggest configurations, and catch rule conflicts automatically.

Structured & Parseable

Every product model can be parsed into fields, options, constraints, and pricing rules — ready for LLM consumption.

Automated Validation

AI-powered analysis detects circular dependencies, missing references, and conflicting constraints before they reach production.

Self-Documenting

The DSL is its own documentation. Field labels, constraint messages, and option descriptions are embedded in the rules themselves.

// READY TO CONFIGURE?

Your products are complex. Your tools shouldn't be.

Let's map your product rules into the engine. We'll start with a conversation about what you build and how you build it.