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 consists of these 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. When you run the
startSampleServer
script, a Jetty web server starts serving those samples. sampledata
-
Folder containing geographic data that samples depend on, some GeoJSON files, for example.
samples
-
Folder containing the source code of the samples.
toolbox
-
Folder containing the source code of reusable components used in the samples.
sampleserver
-
Folder containing files needed for the Jetty server.
scripts
-
Folder containing various JavaScript scripts to help deploying the samples. 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.
You can find the LuciadRIA packages in the packages/
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 ECMAScript 6 (ES6) modules. An ES6 module is a code component that loads asynchronously under the ES6 specification.
Thanks to this fine-grained package structure, the users of your web application must only download the JavaScript code that the application requires.
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 ship that loader with the LuciadRIA distribution.
You can still use another es6 loader, though.
The sample server included in the distribution is similarly configured.
If you change 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.