The LuciadRIA product comes as a collection of .zip files. You must extract them all to the same directory. After unzipping, you can:

  • Install LuciadRIA in your own project: see the Hello world tutorial for more information.

  • Browse the LuciadRIA documentation by opening the StartHere.html file.

  • Explore the LuciadRIA samples and source code.

Your installation contains the following folders and main files:

docs

Folder containing the LuciadRIA documentation articles, reference documentation and release notes.

licenses

Folder to hold the license file required to run LuciadRIA samples.

packages

Folder containing the code of LuciadRIA, organized as npm packages. See Npm directory structure for more information.

packed-samples

Folder containing the packed samples. These samples are served through a Jetty web server when you run the startSampleServer script.

sampledata

Folder containing geographic data that samples depend on, some GeoJSON files, for example.

samples

Folder containing the source code of the samples.

sampleserver

Folder containing files needed for the Jetty server.

scripts

Folder containing various JavaScript scripts to help deploying the samples.

lerna.json

Lerna configuration file for the LuciadRIA distribution. See the Explore and edit the sample code tutorial for more information.

package.json

npm configuration file for the LuciadRIA distribution.

StartHere.html

Portal page that gives access to the different parts of the LuciadRIA distribution.

startSampleServer.bat/sh

Batch and script files that start a Jetty web server on localhost at port 8072 so that you can try out the pre-packed LuciadRIA samples.

Npm directory structure

The LuciadRIA distribution comes with one or more npm packages for the LuciadRIA API. The LuciadRIA packages are located in the packages/es6 directory.

@luciad/ria

Provides the core LuciadRIA functionality.

@luciad/ria-geometry

Provides support for calculating constructive Boolean operations of 2D shapes

@luciad/ria-milsym

the Defense Symbology package that provides support for several military symbology standards.

Each package contains a number of ECMAScript 6 (ES6) modules. An ES6 module is a code component that can be loaded asynchronously under the ES6 specification.

Thanks to this fine-grained package structure, the users of your web application only have to download the JavaScript code that is required by the application.

Sample structure

Each LuciadRIA sample is also distributed as an npm package in the packed-samples folder. This means that you can find the npm dependencies of each sample in the package.json file located in the sample sub-folder.

The sample package.json files indicate that webpack is one of the requirements. Webpack is used for bundling and serving the LuciadRIA sample applications. We use webpack to bundle LuciadRIA, and therefore ship that loader with the LuciadRIA distribution. You can still use another es6 loader, however.

The sample server included in the distribution is similarly configured. If you modify or create files in the LuciadRIA distribution and run a sample application with webpack, you can test your modifications immediately on http://localhost:3001.

See Explore and edit the sample code for more information on how to edit and rebuild the samples.