Balli

Balli is Malli for Basilisp: a data-driven schema library that brings Malli's schema syntax and core workflows to Python-hosted Basilisp code. It provides validation, explanations, transformation, parsing, generation, export, function instrumentation, registries, and Basilisp/Python interop.

Use this documentation when you want the stable user-facing guide. The README remains the quick project overview.

What Balli Is Good For

  • Validating data at application boundaries.
  • Coercing JSON, strings, time values, and collection shapes.
  • Generating sample data for tests.
  • Exporting JSON Schema, OpenAPI, Swagger, DOT, and PlantUML.
  • Sharing schema definitions as plain data in a Basilisp codebase.