Technical Details
This section provides information on the design of this application. The major design considerations are outlined below:
- Separation of visual style from functionality
- CSS = Visual Style
- HTML = Visual Tree
- XSLT = Functionality
- 'Thin Server' design - no build pipeline
- Side-effect free transforms
- SEO and Accessibility - Restricted static-HTML transformer
- Scalability - Lazy loading & processing
- Browser history & bookmarkability - simulated client/server split
- Three schemas supported
- HTML5 Article Element Schema
- Function Specification Schema
- JavaDoc Data Schema
- Maintainability - Predominantly coded in XSLT 2.0
- State-management and non-standard browser features - Used 'Raw' JS