FLUID-4609: Package the Infusion framework as a node package, suitable for use with node.js and the node package manager (npm)

Metadata

Source
FLUID-4609
Type
Improvement
Priority
Major
Status
Closed
Resolution
Fixed
Assignee
Colin Clark
Reporter
Antranig Basman
Created
2012-02-16T23:55:16.077-0500
Updated
2014-07-11T15:02:01.870-0400
Versions
N/A
Fixed Versions
N/A
Component
  1. Framework

Description

This work follows on from FLUID-4568, which simplified the framework's dependency profile, so that it is capable of booting up easily in the absence of a working DOM. Becoming a node package is important not only for social currency, but also to enable upcoming GPII work on the preferences server. The initial implementation strategy will be to use an "off-the-shelf" server and routing engine (express, connect, etc.) so we can make quick progress, but to retain access to the Infusion framework to start work on proper abstraction of I/O behind the "DataSource" idiom as well as for model transformation work required for preferences and capabilities matchmaking.

Work on "kettle proper", Fluid's server-side engine as ported to node (KETTLE-11) can be pushed out to a later time as we gradually require more capabilities of the IoC framework during request routing and remedy issues with IoC itself (FLUID-4392)

Comments

  • Antranig Basman commented 2012-03-11T01:31:26.748-0500

    A workable although slightly non-standard packaging system - fluid.require("package", require) - has been merged into the core framework over a few recent commits