Issue #3562026: Monorepo consolidation

Task Notes Status
Consolidate workspaces

Workspace list is now:

  • "packages/*"
  • "ui"
  • "docs/user"
  • "tests/modules/canvas_test_extension"

Global eslint
  • All individual eslint configs consolidated into the top level eslint.config.mjs
  • New ci jobs for global eslint + prettier
  • Removed eslint as a dep from all workspaces.
  • run eslint for the whole project with npm run lint:eslint

Global tsconfig.json
  • All individual tsconfig.json files consolidated into top level tsconfig.json
  • Workspaces now extend the global config, and change where necessary
  • new @drupal-canvas/types package added to include types shared accross workspaces. This was needed to correct type checking issues where types from ui were included in other packages. A follow up would be to move more types into this package.
  • new ci job that type checks all workspaces.

Refactor CI
  • New jobs for linting, prettier and type checking.
  • Existing jobs updated to use new workspaces

Implement Turborepo With the scale of changes required for the above items, I've left this out intentionally and should be handled as a follow up.

Implement publish ci job As above.

Edited by Jack Taranto

Merge request reports

Loading