Seanox aspect-js is a browser-native application runtime for single-page applications (SPAs) and micro-frontends.
Applications remain composed of HTML, CSS and JavaScript resources that are loaded, connected and managed by the runtime. Native browser technologies are extended with declarative application concepts such as expression language, component composition, view-module binding, routing and reactive rendering without requiring compilation.
The programming model applies established enterprise UI concepts such as declarative views, expression language, component composition and view-module binding directly in the browser while preserving HTML as the primary view language and JavaScript as the application language.
Recommendations for UI frameworks:
- https://bulma.io/
- https://picocss.com/
- https://vanillaframework.io/
- https://fomantic-ui.com/
- https://getbootstrap.com/
- https://getuikit.com/
- HTML and JavaScript Integration
Uses component resources consisting of HTML, CSS and JavaScript as primary application modules and can be combined with other JavaScript frameworks, provided their functionality and syntax do not overlap. - Declarative Markup
Extends HTML with declarative attributes, expressions and runtime processing for conditions, iteration, rendering, validation, events and related operations. - Expression Language
Provides expressions in markup with access to JavaScript functionality and application modules. - Component-Based Architecture
Provides components composed of markup, styles, scripts and additional resources. - View-Module Binding
Connects HTML elements with JavaScript modules for synchronization of values, states and events in architectures such as MVC, MVVM and MVCS. - Reactive Rendering
Updates affected parts of the view when reactive data objects change. - Modular Resources and Runtime Imports
Supports namespaces, modules, macros and loading of component resources at runtime. - Routing and View Flow
Organizes views through paths, navigation, interceptors and permission concepts. - Resource Bundles
Provides externalized messages and support for internationalization (i18n) and localization (l10n). - XML Data Source
Provides an immutable XML-based data source with querying and transformation capabilities using XPath and XSLT. - Single-Page Applications and Micro-Frontends
Provides runtime concepts for structuring applications as modular browser applications. - Test Environment
Provides APIs for implementing and executing unit and integration tests.
Seanox Software Solutions is an open-source project, hereinafter referred to as Seanox.
This software is licensed under the Apache License, Version 2.0.
Copyright (C) 2026 Seanox Software Solutions
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
- ECMAScript 6 support or higher (normally the current browsers)
Engines (tested): Blink, Gecko, Goanna, WebKit, ... - Web server for hosting
Seanox aspect-js 1.9.0
Seanox aspect-js 1.9.0 Sources
The release channels continuously provide the latest final versions.
-
https://cdn.jsdelivr.net/npm/@seanox/aspect-js/release/aspect-js.js
for deployment without Test API -
https://cdn.jsdelivr.net/npm/@seanox/aspect-js/release/aspect-js-max.js
for deployment without Test API not minimized and with comments -
https://cdn.jsdelivr.net/npm/@seanox/aspect-js/release/aspect-js-testing.js
for development and testing -
https://cdn.jsdelivr.net/npm/@seanox/aspect-js/release/aspect-js-testing-max.js
for development and testing not minimized and with comments
BF: Composite: Validation corrections and optimization
BF: DataSource: Correction for the use of locator/path with (sub)directories
BF: DataSource: Correction of the method fetch when using the cache
BF: Extensions: Correction of window.location.contextPath
BF: Routing: Correction / workaround if the hashchange event is missing
CR: Composite: Switch to microtasks-based scheduling
CR: Composite: Renaming Composite.asynchron to Composite.asynchronous
CR: Composite: Renaming Markup Hardening to Markup Protection
CR: DataSource: Optimization and extension
CR: Markup: iterate also supports numbers
CR: Markup: import / output optimization and extension for DateSource
CR: Message: Optimization and extension
CR: Test: Update web server to version 5.9.0