asqium: A JavaScript Plugin Framework for Extensible Client and Server-side Components

Titleasqium: A JavaScript Plugin Framework for Extensible Client and Server-side Components
Publication TypeConference Paper
Year of Publication2015
AuthorsTriglianos, V., and C. Pautasso
Conference Name15th International Conference on Web Engineering (ICWE 2015)
Pages81-98
MonthJune
PublisherSpringer
Conference LocationRotterdam, NL
KeywordsASQ, plugin architecture, web framework
Abstract

JavaScript has been growing from a language for embedding simple scripts into Web pages to a language for programming complex Web applications, whose logic is deployed across both Web browsers and Web servers. Current software packaging mechanisms for JavaScript enable a basic level of modularity and reuse. However, they have not yet reached full maturity in terms of enabling to extend a system with features contributed as third-party plugins, while encapsulating them adequately.
In this paper we present a novel plugin system for JavaScript applications, which integrate Node.js modules with HTML5 Web Components. It provides abstractions for: real time and loosely coupled communication between front-end and back-end components, persistent state storage, and isomorphic usage of JavaScript. Plugins can use hooks and events to contribute functionality and embed it into the main application flow, while respecting the common asynchronous non-blocking programming paradigm of JavaScript. We demonstrate the expressiveness of the framework as it is used to build ASQ: an open and extensible educational Web platform.

DOI10.1007/978-3-319-19890-3_7
Citation Keyasq:icwe:2015
Refereed DesignationRefereed