Skip to content

A free-range-app utility for resolving locally hosted apps.

License

Notifications You must be signed in to change notification settings

margaree/frau-local-appresolver

 
 

Repository files navigation

frau-local-appresolver

NPM version Build status Coverage Status Dependency Status

A free-range-app utility for resolving locally hosted apps.

Installation

Install from NPM:

npm install frau-local-appresolver

Usage

From CLI

The FRAU app resolver can be run either directly on the console CLI (assuming dependencies are installed), or specified as a script in package.json.

Launching the local app resolver can be as simple as:

frau-local-appresolver --appclass|-c urn:d2l:fra:class:some-app

However additional options (described below) can be configured:

frau-local-appresolver --appclass|-c urn:d2l:fra:class:some-app 
                       --configfile|-f appconfig.json 
                       --hostname|-h acme.com 
                       --port|-p 3000 
                       --dist|-d dist
"scripts": {
  "resolver": "frau-local-appresolver"
},
"config": { 
  "frauLocalAppResolver": {
    "appClass": "urn:d2l:fra:class:some-app",
    "configFile": "appconfig.json",
    "hostname": "acme.com",
    "port": "3000",
    "dist": "dist"
   }
}

From JavaScript

var appResolver = require('frau-local-appresolver').resolver;

// simply provide required appClass
appResolver = appResolver(appClass);

// alternatively override default options
appResolver = appResolver(appClass, options);

// host the app resolver
appResolver.host();

// get where the app content is hosted
var target = appResolver.getUrl();

Parameters:

  • appClass (required) - The app class to resolve.
  • options (optional) - An object containing:
    • dist - The directory containing the app files to serve. By default, the dist directory is used.
    • port - The port to listen on. By default, port 3000 is used, which is the port that the LMS expects it on.
    • hostname - The hostname (or IP) to listen on. By default, the hostname of the operating system is used. You should not need to change this.
    • configFile - The name of the app config file. By default, appconfig.json is used. You should not need to change this.

Contributing

Contributions are welcome, please submit a pull request!

Code Style

This repository is configured with EditorConfig rules and contributions should make use of them.

About

A free-range-app utility for resolving locally hosted apps.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%