Install

Works with Drupal: ^11.2

Using Composer to manage Drupal site dependencies

Alternative installation files

Download tar.gz 26.96 MB
MD5: 9f856a94ea734b9e3fe85ea4a45abfcb
SHA-1: 65cfb485f11f1d33a20b5c9343e9063d034efce9
SHA-256: e88e4c0f843a27ca4690a672bb022e9eea2ed79d6ffbec7ab3b6f8abf18f8c16
Download zip 27.98 MB
MD5: b0a25e296ab6cfe81fa55a27a9923de7
SHA-1: a9791eb4bfe62ffbec24426ce9e9f66e9e1fa8c2
SHA-256: ce3e8447bcb6d2242e880d54bceedbae8421fe282af6f29b38de557426d87785

Release notes

A little over 18 months after Dries announced Starshot at DrupalCon Portland, where building a new visual page builder was set as a key goal, Drupal Canvas 1.0.0 is here. Get to know what’s included at https://www.drupal.org/blog/drupal-canvas-is-now-available-inside-drupal....

Changelog

Issues: 21 issues resolved.

Changes since 1.0.0-rc5 (compare):

Bug

  • chore(tests): #3554184 Fix another regression in MySQL and MariaDB CI jobs
  • fix: #3559574 UI shows error 'can't access property "resolved", ne[r] is undefined' with extjs-components having no props
  • fix: #3560455 [upstream] Stream wrapper URIs are incorrectly flagged as invalid (hostname misinterpreted) due to bug in `justinrainbow/json-schema` — bump minimum version to 6.6.2
  • chore: #3560455 Follow-up to keep the `$ref` id after upgrade to `justinrainbow/json-schema:^6.6.2`
  • feat: #3559298 Canvas AI : List Prop Error When Updating Component Using Canvas AI
  • fix(AI): #3554256 AI wizard does not work when site is in a subdirectory
  • feat: #3556366 Canvas AI: AI request should be aborted as soon as we close the Ai panel.

Feature

  • task(Shape matching): #3515624 Prove any prop shape can be made to work if a contrib module implements `hook_storage_prop_shape_alter()` and populates it
  • feat(CLI Tool): #3559127 ESLint config and CLI command for validation
  • docs(CLI Tool): #3559127 add validate command documentation to the CLI readme
  • feat(CLI Tool): #3556200 Add non-interactive mode for all commands
  • feat(Page): #3547861 Allow creating a new Page from the Pages listing

Misc

  • chore: Update comment to avoid phpcs violation
  • chore: Update UI packages

Task

  • chore: #3560441 Update PHPCS config to match Drupal 11
  • feat: #3515074 Shape matching MUST work with the resolved equivalents of $refs AND must be compatible with core's upcoming $ref resolving in SDCs
  • chore: #3560509 Update PHPCS config to match Drupal 11
  • feat(Redux-integrated field widgets): #3560520 Hide path alias and meta description help texts from page data form
  • chore: #3560509 Update PHPCS config to match Drupal 11
  • feat: #3556946 Canvas AI: Unable to mark requested prop as required/optional
  • fix: #3552028 Remove assertion in `ComputedUrlWithQueryString::calculateDependencies()` to allow contrib reuse
  • feat: #3556327 Don't save `Component` config entities unnecessarily
  • feat: #3553397 Document our @internal API policy
Created by: balintbrews
Created on: 4 Dec 2025 at 18:24 UTC
Last updated: 4 Dec 2025 at 19:11 UTC
Bug fixes
Insecure
Unsupported

Other releases