Drupal is a registered trademark of Dries Buytaert
Storage Entities 1.4.2 Minor update available for module storage (1.4.2). JSON Template 1.0.5 Minor update available for module json_template (1.0.5). Leaflet MapBox 2.0.2 Minor update available for module leaflet_mapbox (2.0.2). Module Builder 4.2.4 Minor update available for module module_builder (4.2.4). HTTP Anti-virus 1.1.5 Minor update available for module httpav (1.1.5). HTTP Anti-virus 1.3.3 Minor update available for module httpav (1.3.3). Commerce Make-to-Order 1.0.1 Minor update available for module commerce_make_to_order (1.0.1). Purge Module purge crossed 1,000 active installs. Clover Commerce Sync 1.0.2 Minor update available for module clover_commerce_sync (1.0.2). Simple Google Maps 4.0.1 Module simple_gmap updated after 17 months of inactivity (4.0.1).

This module provides a browser-based interface to migrate Canvas JavaScript components and global CSS between Drupal sites. It allows you to export components from one site and import them into another, with options to include or exclude CSS and validate components before migration.

Introduction

Canvas Component Migrator provides a browser-based admin interface for moving Canvas JavaScript components and global CSS between Drupal sites.

  • Export - push components from this site to a remote destination.
  • Import - pull components from a remote source into this site.

Only the site running the migration needs this module. The other site only needs Canvas and a configured OAuth consumer.

This module wraps the @drupal-canvas/cli npm package. Features and supported commands track that package - new CLI capabilities will be reflected in module updates.

Features

  • Select individual components or migrate all at once
  • Three CSS modes: include global CSS, skip CSS, or CSS only
  • Auto-selects the optimal CLI strategy (pull/push vs download/upload)
  • Optional pre-send ESLint validation via canvas validate
  • Dependency warnings - flags components whose dependencies are missing on the source site
  • Configurable CLI timeout for large sets or slow connections
  • All activity logged to Drupal watchdog (canvas_migrator channel)
  • No global config stored - credentials are entered per operation
  • No terminal access needed on the server running the migration.

Post-Installation

Go to Admin → Configuration → Canvas to find the Export and Import forms. Before running a migration, configure an OAuth consumer on both sites with scopes enabled such as canvas:js_component, canvas:asset_library, and ensure Node.js (v18+) and the @drupal-canvas/cli package are installed on the server. Full setup instructions are in the module README.

Additional Requirements

  • Drupal 10 or 11
  • Canvas module
  • Simple OAuth consumers configured on both source and destination sites
  • Node.js v18 or later and npm, available to the web server process
  • @drupal-canvas/cli npm package (currently v0.11.2) - this module's feature set tracks the CLI, check the module release notes when upgrading the package.

Canvas OAuth - simplifies OAuth consumer setup for Canvas-specific scopes.

Similar projects

No direct equivalent exists. This module is the only admin UI wrapper for the @drupal-canvas/cli migration toolchain.

Supporting this Module

NA

Community Documentation

NA

Activity

Total releases
1
First release
Apr 2026
Latest release
2 months ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Active

Releases

Version Type Release date
1.0.x-dev Dev Apr 22, 2026