adapt_framework icon indicating copy to clipboard operation
adapt_framework copied to clipboard

v6 proposal

Open oliverfoster opened this issue 4 years ago • 3 comments

An outline of the changes to be included in the next major release of Adapt Framework.

1. npm modules to replace bower modules

This will introduce plugin dependencies and move away from deprecated bower infrastructure.

Prototype: issue/2526

How

  1. Drop src/core, move code to adapt-contrib-core
  2. Add package.json to each plugin
  3. Drop src/course in favour of build/course
  4. Add src/package.json and src/index.js
    • Creates a src/node_modules/ folder separate from node_modules/ meaning that the executable code (grunt etc) is separate from the front-end code (adapt)

Outstanding works

  1. Zip uploads to the AAT
    • Will not currently work with node_modules as npm modules must be installed
    • Need to develop a solution: local linked plugins / overrides folder / other
  2. Should move from libraries/ to installed npm dependencies (jquery, backbone, underscore etc)
  3. Cannot allow npm scripts in the src/node_modules folder as will allow plugins to execute custom code on the AAT when installed or uninstalled
  4. adapt-cli needs modifying to accommodate npm instead of bower
  5. Develop compile-by-plugin-type behaviour to mimic current practise. less, templates, required, fonts and libraries folders should be processed in plugin type order. In the existing prototype they are processed alphabetically.
  6. Compiler should ignore non-adapt node_modules/
  7. Look at and document private npm registries and namespaces

2. navigation item management

To provide a formal API for adding items to the navigation bar and provide a method of configuring their order.

PR: #2864

Outstanding works

  1. Develop json configuration standard
  2. Migrate existing extensions to use new API

oliverfoster avatar Feb 24 '21 13:02 oliverfoster

v6 might also be a good opportunity to sort out the whole _isA11yCompletionDescriptionEnabled vs _disableAccessibilityState thing - see adaptlearning/adapt-contrib-core#186 and adaptlearning/adapt-contrib-core#190

moloko avatar Feb 26 '21 18:02 moloko

and maybe adaptlearning/adapt_framework#1743 too?

moloko avatar Feb 26 '21 18:02 moloko