Paul Krill
Editor at Large

AquaJS floats a framework for JavaScript microservices

news
Feb 18, 20162 mins

The Node.js-based technology handles contracts definition, API call generation, and integration

two millennials standing in field holding picture frame against blue sky
Credit: Thinkstock

The AquaJS framework for Node.js looks to speed up app dev by streamlining integration processes. In development at enterprise connectivity services provider Equinix, AquaJS moved to public beta stage this week with a general release, available as an Npm, expected in a month.

“You define a contract. AquaJS will read those contracts, and it automatically generates the scaffolding end-to-end,” said Venkatachalam Rangasamy, senior software architect at Equinix.

An open source framework, AquaJS generates API calls, handles connection points between frameworks, and solves integration issues. It’s built on top of the Express Node.js Web application framework to support microservice design principles, with Express handling HTTP requests. AquaJS applications are written entirely in JavaScript, and the framework itself leverages the MVC development pattern.

Microservices developed via AquaJS are based on services definitions in the YAML data serialization standard. Socket.io, for bidirectional event-based communication, manages WebSockets connections, and workflow is defined for each API contract request. Orchestration capabilities, meanwhile, enable development of customized endpoints, setting up a request-response model.

In AquaJS, connectors are plug-in modules. “Any external system interaction and integration is via connector,” Rangasamy said. “Examples of connectors are database connectors, API connectors, and MQ connectors. By default, all these mentioned connectors are available with AquaJS, and developers need to just configure them. AquaJS also supports new connector development to accommodate specific needs.”

The inventor of Npm, Isaac Schlueter, had mixed views on the project based on his cursory view of AquaJS documentation. “It’s focused on microservices, which is Node’s sweet spot so that’s nice.” But the project’s emphasis on specific convention in how the framework is used could be an issue with some developers. “They mention in their documentation in a few places that they favor convention over configuration, which is great if the convention is something that works for you,” he said. “And if not, then it can be a little bit frustrating.” AquaJS documentation does provide for some degree of customization, however.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author