🚀 Andalina is evolving fast! Star or Watch our repository to get instantly notified about new features and releases.

Download Andalina

Get the latest version of the core engine and default configuration.

Download v1.8.1 (.zip)

Includes andalina.js and andalina.config.json • Licensed under GNU LGPL-3.0

Andalina Builder (VS Code Extension)

Transpile your dynamic Andalina projects directly into static SSG sites or native Enterprise framework views (JSF, Blade, Django, Thymeleaf) for production.

Changelog

v1.8.1 – Script Execution Integrity, Dev-Server Sanitization & Nested Slot Scoping

October 20, 2026

Bug fixes and stability improvements for embedded script execution, local dev-server compatibility, and nested slot scoping.

Fixed
  • Script Text Integrity in Dynamic Injection: Fixed an issue in cloneNodeSafe where .innerHTML caused logical operators (&&, <) inside <script> blocks to be HTML entity-encoded, leading to syntax errors during dynamic script execution. Cloned scripts now preserve raw code via verbatim .textContent.
  • Dev-Server Live Reloader Sanitization: Automatically detects and strips injected VS Code Live Server / WebSocket reloader scripts from fetched template and component fragments (fetchFragment), preventing redundant reloader executions and stopping development server scripts from leaking into <an-code> documentation blocks.
  • Nested Slot Collision Prevention: Scoped <an-inject> slot extraction to only direct children of the target template/layout/component container (getDirectInjects), ensuring inner slots with matching names (e.g. name="content") never overwrite outer parent slots.
Updated
  • Andalina Builder & VS Code Extension (v1.8.1): Bumped CLI builder and VS Code extension to v1.8.1 with updated engine bundle.

v1.8.0 – In-Page Demo Code Extraction & Two-Stage Lifecycle

October 19, 2026

Introducing live in-page DOM code extraction and two-stage snapshot support for <an-code>.

Added
  • In-Page Code Extraction (src="#element-id"): <an-code> can now reference any element on the current page via an ID selector (e.g., <an-code src="#button-demo">), eliminating duplicate external snippet files for UI documentation and interactive demos.
  • Two-Stage Capture (stage="before | after"): Use stage="before" to display the raw, unrendered Andalina syntax (e.g., <an-component>) and stage="after" (default) to display the final compiled HTML output—ideal for side-by-side or tabbed documentation views.
  • Built-in HTML Formatter & Snippet Controls: Automatically formats extracted in-page HTML snippets with clean 4-space indentation while keeping external code files unformatted by default. Includes unwrap="true" (to extract inner markup without the wrapper container), keep-id="true" (to preserve the root element ID), and format="true | false" overrides.
Updated
  • Andalina Builder & VS Code Extension (v1.8.0): Updated the CLI compiler (with Node 20+ ESM LinkeDOM support) and VS Code extension to v1.8.0.

v1.7.0 – Template Reconstruction & HTML5 Parsing Reliability

October 17, 2026

Critical enhancements to document rebuilding, DOM parsing stability, and error resilience.

Fixed
  • Custom Element Parsing & Child Preservation: Fixed an HTML5 parser quirk where self-closing non-void tags (like <an-attribute />) swallowed subsequent sibling elements. Self-closing custom tags are now pre-normalized, and any swallowed DOM children are safely unwrapped back into the document before attribute extraction.
  • Pure DOM Template Rebuild: Replaced destructive document.open() and document.write() calls with non-destructive DOM node merging for <an-template>, preventing dev-server live reloading disconnects (VS Code Live Server) and avoiding timing issues with deferred scripts.
  • FOUC Error Boundary & Safety Timeout: Wrapped engine initialization in a try...finally block and added a 4-second safety timeout so the page body is never left hidden at opacity: 0 when an unhandled error or resource delay occurs.
Updated
  • Andalina Builder & VS Code Extension (v1.7.0): Updated the CLI package and VS Code extension to align with engine release 1.7.0.

v1.6.0 – Advanced Templating & JS Expressions

August 23, 2026

Introducing logic control flow and JavaScript expressions into the templating engine.

Added
  • Conditional Logic (<an-if> / <an-else>): Show or hide template blocks based on JavaScript expressions evaluated against your <an-data> stores. Integrated seamlessly with <an-repeat> for loop-scoping.
  • JS Expressions in Bindings: The double-curly braces parser ({{ }}) has been supercharged to support full JavaScript expressions, fallbacks (e.g. {{ user.name || 'Guest' }}), math, and logic operations.
Updated
  • Andalina Builder (v1.6.0): The CLI and VS Code extension have been bumped to match the engine version and now natively support AOT compilation of conditionals and JS expressions.

v1.5.0 – Global Data Binding & Array Indexing

August 22, 2026

Introducing global data availability across layouts, and seamless array bracket notation.

Added
  • Global Data Binding: Data fetched using <an-data> is now globally accessible via dot-notation (e.g. {{ appConfig.title }}) without requiring an <an-repeat> loop.
  • Array Bracket Notation: Property resolvers now natively support standard JavaScript bracket notation (e.g. {{ products[0].name }}) alongside dot notation.
Updated
  • Andalina Builder (v1.1.0): The AOT CLI builder and VS Code extension has been updated to compile pages leveraging global data bindings correctly.
  • Examples Hub: Upgraded the Complex Composition example to vividly demonstrate the power of Global Data Binding across nested layout components.

v1.4.0 – Data Fetching & Examples Hub

August 22, 2026

Introducing external JSON data fetching, dynamic repeater binding, and a comprehensive real-world Examples Hub.

Added
  • Data Fetching: Added <an-data src="URL" name="variable"> tag to asynchronously fetch JSON arrays/objects and store them globally for template consumption.

  • Dynamic Repeaters: Upgraded <an-repeat> to support looping over arrays using the new data and item attributes.

  • Examples Hub: Added a new official Examples Hub featuring 7 real-world use cases, ranging from basic component injection to complex layout-data-repeater chains.


v1.3.0 – Andalina Builder & Developer Comments

August 12, 2026

Introducing the official Andalina Builder extension for VS Code and specialized syntax for developer notes.

Added
  • Andalina Builder: Released the official VS Code Extension. Features a native GUI to manage build actions, static compilation of Andalina components, automatic asset copying, and auto-build on save.

  • Developer Comments: Added a new syntax <!-- an-comment: note --> that allows developers to leave internal notes which are automatically stripped by the Builder during compilation.


v1.2.0 – Structured Syntax & Core Optimization

July 28, 2026

Major architecture upgrade enforcing Structured Syntax for components and layouts, plus significant core engine optimizations.

Added
  • Structured Syntax Support: Added canonical wrapper tags <an-component-def> and <an-layout-def>, cleanly separating metadata (<an-attributes>) from DOM markup (<an-body>).

  • Instant O(1) Metadata Lookup: Replaced regex string stripping with native DOM queries (doc.querySelector('an-attributes')), extracting prop defaults and flags instantly without temporary innerHTML divs.

  • Mandatory Prop Checking: Calling tags are now validated against mandatory="true" attributes with descriptive warnings if omitted.

Changed
  • Core Engine Optimization: Benchmarked against v1.1.0 showing a 26.2% speed improvement (1.36x faster) in component parse and render cycles.

  • Strict Architecture Enforcement: Flat/unstructured components now log a helpful console error guiding developers to structured syntax.

  • LGPL-3.0 License: Officially licensed under the GNU Lesser General Public License v3.0 (LGPL-3.0-or-later).


v1.1.0 – Global Versioning & Cache Busting

July 27, 2026

Introduced global versioning, cache-busting query parameters, and pre-parse attribute extraction.

Added
  • Global Cache Busting: Added globalConfig.version and data-version support to automatically append ?v=VERSION to fetched URLs.

  • Cache-Control Headers: Injected no-cache meta headers across documentation and download pages.

Fixed
  • Head Parsing Protection: Prevented browser DOM parsers from moving component metadata into the body during fragment loading.


v1.0.0 – Initial Release

July 20, 2026

First public release of Andalina HTML Composition Engine.

Added
  • Zero-dependency client-side HTML composition engine supporting <an-include>, <an-layout>, <an-component>, <an-template>, and <an-repeat>.


Changelog label

Added
Changed
Depricated
Removed
Fixed
Security
Unreleased