@axioroute-sinari/axioroute-mapviz

Axioroute - Map Viewer & Dev Tools

A Map Viewer + Toolbox to effeciently use Axioroute API

🚩 Prerequisites

  • pnpm
  • Axioroute an axioroute App with client id/scret and API Key

📦 Project structure

  • Typescript (strongly typed programming language )
  • Openlayers (A high-performance, feature-packed library for all your mapping needs.)
  • Docusaurus (Easy to maintain documentation websites)

🔧 Gitlab token

Requirement: node version >= 18.0 Create a gitlab token with api rights (see https://gitlab.com/-/user_settings/personal_access_tokens) Create / update ~/.npmrc

@axioroute:registry=https://gitlab.com/api/v4/projects/53289426/packages/npm/ //gitlab.com/api/v4/projects/53289426/packages/npm/:_authToken=

Where is your gitlab token

🔧 General Setup

All commands below are meant to be executed from project root, adapt it to your current active folder

Open one terminal window per sub projects

All setup should be executed in the order given below to match dependencies

🔧 Build axioroute-sdk package

This is the core package used by all the demo apps and by axioroute-mapviz package

cd packages/axioroute-sdk
pnpm install
pnpm build

to publish the package, set the .npmrc in your runner then use the command:

npm publish --access public

Serve the typedoc documentation

pnpm doc:serve

🔧 Build axioroute-mapviz package

This is the package used by the webview

cd packages/axioroute-mapviz
pnpm install
pnpm build

Serve the typedoc documentation

pnpm doc:serve

🔧 Setup websocket server

This server is used for both websocket communication and as an API auth & proxy server

cd demos/app-websocket-server
cp .env.example .env

feed .env with requested env variables

cd demos/app-websocket-server
pnpm install
pnpm dev

🔧 Setup Webview

This is the webview app, including:

  • an openlayers map
  • an overlay used for any action not in the scope of the map itself (like debugging)
cd demos/app-webview-source
pnpm install
pnpm dev

🔧 Setup Demo App

This is the Demo App using the webview as an iframe

cd demos/app-with-iframe
cp .env.example .env

feed .env with requested env variables

cd demos/app-with-iframe
pnpm install
pnpm dev

If you complete all above steps, you can now the url that should be displayed within the terminal

🔧 Setup Functional Documentation

cd documentation/functional-documentation
pnpm install
cp .env.example .env # feed .env with requested env variables

Serve the documentation:

pnpm dev

Generated using TypeDoc