Download Latest Version LessHeadCMS-v0.2.0.zip (1.0 MB)
Home / v0.3.0
Name Modified Size InfoDownloads / Week
Parent folder
LessHeadCMS-v0.3.0.zip 2026-10-31 1.2 MB
README.md 2026-10-31 2.6 kB
Validate everything_ field rules, patterns and multilingual messages source code.tar.gz 2026-10-31 1.1 MB
Validate everything_ field rules, patterns and multilingual messages source code.zip 2026-10-31 1.2 MB
Totals: 4 Items   3.4 MB 1

What's new

Richer validation

Define validation rules per field directly in the PlantUML diagram, e.g.:

  • teaser: string {maxLength: 140}
  • code: string {minLength: 3} {maxLength: 12}
  • zip: string {pattern: plz}
  • servings: int {min: 1, max: 20}
  • publishedAt: date {min: 2020-01-01}

  • Length limits (minLength/maxLength) for string, text and richtext. Lengths are counted in Unicode characters; for richtext only the visible text counts.

  • Value ranges (min/max) for int, decimal and date.
  • Pattern library in the admin area (Settings → Patterns): reusable regular expressions with an editor-facing error message and an example value. Built-in patterns: email, url, slug, plz.
  • Enforced server-side for every write path: POST, PUT, the new PATCH route, the editing form, version restore and the test data generator.
  • ReDoS protection: expensive expressions are rejected on save, and in-browser checks run in a Web Worker with a time limit.
  • Tightened rules never modify existing data. Schema analysis reports how many records would be affected, and a new Rule violations view lists them with direct links for manual cleanup.
  • Character counter and inline errors in the editing form.

Languages and translations

  • All server messages are now in English and carry a code and params, so API clients can translate them. The editing interface translates via these codes, so German users see the same texts as before.
  • One consistent fallback chain for UI texts and server messages: display language → default language → English.
  • English works out of the box: shipped language files (currently en.csv) take effect without an import.
  • Custom language files: set CUSTOM_TRANSLATIONS_DIR in config.php to use your own translation files. That folder is not touched by updates.
  • Fixed UI texts can now be translated or overridden for the default language too, e.g. for a fully French installation.

Bug fixes

  • After login, a route selected quickly (sidebar click or typed URL) was overwritten by the start page redirect.
  • The rich text editor could steal focus while UI texts were still loading, so typed input ended up in the wrong field.

⚠️ Breaking change for API clients

Error messages in message, errors and violations are now English. If your client displays them, switch to code / error_codes and params. See REST API docs.

Upgrading

No schema migration needed. New system tables are created automatically on first access.

Source: README.md, updated 2026-10-31