Skip to content
Romans Malinovskis edited this page Jan 22, 2017 · 1 revision

Component Requirements (The Agile Way)

All the components created and distributed for Agile UI must follow these guidelines:

  1. Out-of-the-box - all the components of Agile UI must work intuitively and with zero-configuration anywhere where Aglie UI is present.
  2. Readable code - code for all components must be simple, consise, should re-use other components for improving efficiency.
  3. Configurable - any aspect of the component must be modified through the means of dependency injection, template injection or object-oriented programming.
  4. Common Data standard - all the UI must work with a common data access pattern. No database-vendor code (SQL queries) or "set-in-stone" database structures.
  5. No custom JS code - components can make use of jQuery and Semantic UI JS extensions but keep any "custom" extensions next to none.
  6. No custom CSS - components must rely on Semantic UI and will not unnecesserily sneak in custom CSS
  7. Quality Code - each component must come with a comprehensive documentation and test-suite. The code footprint should be minimalistics and focused around the defined goals. No HTML/JS code in PHP files, concern separation.
  8. Framework-independent - Agile UI remains framework-independent, hence no component should may assumptions or rely on the presence of a specific framework feature.

Agile UI helps 3rd party developers to create components that conform to the set standard through:

  • A set of "standard" UI components that are bundled with Agile UI (buttons, input fields, etc)
  • Wide variety of techniques, patterns and utilities to simplify development of compliant components.
  • Developer documentation, focusing on how to properly build UI components.
  • Training & Education material delivered on-line or through training partners.
  • Certification and partnership options for component developers to ensure high quality.