@edugis-org/webmapx 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,149 +1,61 @@
1
1
  # WebMapX
2
2
 
3
- WebMapX is a web mapping UI toolkit for building interactive map apps quickly.
4
- It supports multiple map engines out of the box: MapLibre, OpenLayers, Leaflet, and Cesium.
3
+ Config-driven web map UI with adapters for MapLibre, OpenLayers, Leaflet, and Cesium.
5
4
 
6
- Live site: https://edugis-org.github.io/webmapx/
5
+ **[Live demo](https://edugis-org.github.io/webmapx/)**
7
6
 
8
- ## Why WebMapX
7
+ ## What it does
9
8
 
10
- - Build a working map UI fast with reusable components.
11
- - Switch map engines without rewriting all tools.
12
- - Use a config-driven setup for layers, backgrounds, and UI behavior.
13
- - Extend with custom tools when needed.
9
+ - Drop a config file, get a full map UI toolbar, layer tree, legend, tools
10
+ - Switch map engines (MapLibre / OpenLayers / Leaflet / Cesium) without rewriting tools
11
+ - 15+ built-in tools: draw, measure, search, print, import, geolocation, 3D, …
12
+ - Lazy loading only tools and engines the config requests download
13
+ - Plugin system for custom tools
14
+ - i18n — English built-in, other locales lazy-loaded from CDN
14
15
 
15
- ## What You Get
16
+ ## Quick start
16
17
 
17
- - Map container and layout system
18
- - Toolbar and tool panel
19
- - Layer tree and layer overview/legend
20
- - Coordinates, zoom level, scale control, geolocation, search, measure tools
21
- - Inset map and navigation controls
18
+ ### CDN (no build tools needed)
22
19
 
23
- ## Prerequisites
24
-
25
- Before you start, install:
26
-
27
- - Node.js 20 LTS or newer
28
- - npm 10 or newer (usually bundled with Node.js)
29
- - Git
30
- - A modern browser (Chrome, Edge, Firefox, or Safari)
31
-
32
- Optional but recommended:
33
-
34
- - VS Code for editing and debugging
35
-
36
- Quick version check:
37
-
38
- ```bash
39
- node -v
40
- npm -v
41
- git --version
20
+ ```html
21
+ <script type="module">
22
+ import { WebMapX } from 'https://cdn.jsdelivr.net/npm/@edugis-org/webmapx@latest/dist-lib/webmapx.js'
23
+ WebMapX.mount('#map', { config: './mymap.json' })
24
+ </script>
42
25
  ```
43
26
 
44
- ## Quick Start
27
+ [CDN quickstart](./docs/developer/cdn-quickstart.md)
45
28
 
46
- ### 1) Clone the repository
29
+ ### npm
47
30
 
48
31
  ```bash
49
- git clone <your-repo-url>
50
- cd webmapx
32
+ npm install @edugis-org/webmapx maplibre-gl
51
33
  ```
52
34
 
53
- ### 2) Install dependencies
54
-
55
- ```bash
56
- npm install
35
+ ```js
36
+ import { WebMapX } from '@edugis-org/webmapx'
37
+ WebMapX.mount('#map', { config: './mymap.json' })
57
38
  ```
58
39
 
59
- ### 3) Run locally
40
+ [npm quickstart](./docs/developer/npm-quickstart.md)
60
41
 
61
- ```bash
62
- npm run dev
63
- ```
64
-
65
- Open the printed local URL in your browser.
66
-
67
- ### 4) Build for production
42
+ ### Clone and run locally
68
43
 
69
44
  ```bash
70
- npm run build
45
+ git clone https://github.com/edugis-org/webmapx.git
46
+ cd webmapx && npm install && npm run dev
71
47
  ```
72
48
 
73
- ### 5) Preview production build
74
-
75
- ```bash
76
- npm run preview
77
- ```
78
-
79
- ## Screenshots
80
-
81
- Add UI images here so new users can understand the project in seconds.
82
-
83
- - Full application view
84
- - Layer panel open
85
- - Tool interaction (search/measure/settings)
86
-
87
- Suggested paths:
88
-
89
- - `docs/images/webmapx-overview.png`
90
- - `docs/images/webmapx-layer-panel.png`
91
- - `docs/images/webmapx-tool-example.png`
92
- - `docs/images/webmapxlegend.png`
93
-
94
- When images are available, include them like this:
95
-
96
- ```md
97
- ![WebMapX overview](docs/images/webmapx-overview.png)
98
- ![Layer panel](docs/images/webmapx-layer-panel.png)
99
- ![Tool example](docs/images/webmapx-tool-example.png)
100
- ![Legend](docs/images/webmapxlegend.png)
101
- ```
102
-
103
- ![Legend](docs/images/webmapxlegend.png)
104
-
105
- ## Configuration
106
-
107
- The default demo configuration lives in `config/demo.json`.
108
-
109
- - `layerData` defines runtime sources and layers.
110
- - `tools.*.items[]` layer-tree entries define the UI tree (`type: "layerTree"`, `tree: [...]`).
111
- - `state.activeExclusiveLayers` tracks single-selection groups (for example basemaps).
112
- - `state.activeLayers` controls visible layers.
113
-
114
- ## Cesium Runtime Assets
115
-
116
- Cesium requires static runtime files (`Workers`, `Assets`, `Widgets`, `ThirdParty`, and `Cesium.js`) at runtime.
117
-
118
- In this project, those files are copied automatically from `node_modules/cesium/Build/Cesium` into the build output (`dist/cesium`) during `npm run build`.
119
-
120
- This keeps local and CI/GitHub Pages deployments reproducible without committing Cesium vendor files. For that reason, `public/cesium` is intentionally gitignored.
49
+ [GitHub / contributor quickstart](./docs/developer/github-quickstart.md)
121
50
 
122
51
  ## Documentation
123
52
 
124
- ### For users
125
-
126
- - User guide: [docs/user/README.md](./docs/user/README.md)
127
-
128
- ### For developers
129
-
130
- - Developer guide: [docs/DEVELOPER_GUIDE.md](./docs/DEVELOPER_GUIDE.md)
131
- - Developer architecture:
132
- - Rules: [Architecture Rules](./docs/DEVELOPER_GUIDE.md#i-architecture-rules)
133
- - Flow: [Data Flow](./docs/DEVELOPER_GUIDE.md#ii-data-flow)
134
- - Diagram: [Architecture Overview](./docs/DEVELOPER_GUIDE.md#v-architecture-overview)
135
- - Engine contracts: [docs/developer/engine-interface.md](./docs/developer/engine-interface.md)
136
- - Engineering rules: [docs/developer/engineering-rules.md](./docs/developer/engineering-rules.md)
137
- - Changelog: [CHANGELOG.md](./CHANGELOG.md)
138
-
139
- ## Commands
140
-
141
- - `npm run dev`: start development server
142
- - `npm run start`: alias for dev server
143
- - `npm run build`: production build
144
- - `npm run preview`: preview production build
145
- - `npm run test`: run test suite
53
+ - [CDN quickstart](./docs/developer/cdn-quickstart.md)
54
+ - [npm quickstart](./docs/developer/npm-quickstart.md)
55
+ - [GitHub / contributor quickstart](./docs/developer/github-quickstart.md)
56
+ - [Plugin authoring](./docs/developer/plugin-authoring.md)
57
+ - [Developer guide](./docs/DEVELOPER_GUIDE.md)
146
58
 
147
- ## Project Status
59
+ ## License
148
60
 
149
- WebMapX is under active development. The core multi-engine adapter model and tool system are in place, and the project continues to evolve toward a stable, configurable mapping platform.
61
+ ISC
@@ -3,7 +3,7 @@ import { t } from "./webmapx-base-tool-Dm9NAWLD.js";
3
3
  import { i as n, n as r, o as i } from "./decorators-B35AgiCU.js";
4
4
  import { css as a, html as o, nothing as s } from "lit";
5
5
  //#region src/utils/epsg-lookup-manager.ts
6
- var c = "https://cdn.jsdelivr.net/npm/@edugis-org/webmapx@0.1.0/public", l = 6e4, u = new class {
6
+ var c = "https://cdn.jsdelivr.net/npm/@edugis-org/webmapx@0.1.2/public", l = 6e4, u = new class {
7
7
  constructor() {
8
8
  this.worker = null, this.isReady = !1, this.isInitializing = !1, this.initPromise = null, this.pendingRequests = /* @__PURE__ */ new Map(), this.requestCounter = 0, this.idleTimeout = null, this.idleTimeoutMs = l;
9
9
  }
@@ -26,7 +26,7 @@ var i = {
26
26
  "3d": () => import("./webmapx-3d-tool-D4CTD2gB.js"),
27
27
  truearea: () => import("./webmapx-truearea-tool-CMB4Orm-.js"),
28
28
  "view-mode": () => import("./webmapx-view-mode-tool-CUpLNjOj.js"),
29
- coordinates: () => import("./webmapx-coordinates-tool-jeWohup9.js"),
29
+ coordinates: () => import("./webmapx-coordinates-tool-CffzSBMQ.js"),
30
30
  settings: () => import("./webmapx-settings-DDEJ8aoV.js"),
31
31
  "config-edit": () => import("./webmapx-config-edit-tool-DCTyxqTk.js")
32
32
  };
@@ -1281,7 +1281,7 @@ function ce(e, t) {
1281
1281
  }
1282
1282
  //#endregion
1283
1283
  //#region src/bootstrap/locale-loader.ts
1284
- var le = "https://cdn.jsdelivr.net/npm/@edugis-org/webmapx@0.1.0/src/locales";
1284
+ var le = "https://cdn.jsdelivr.net/npm/@edugis-org/webmapx@0.1.2/src/locales";
1285
1285
  async function $(e) {
1286
1286
  if (Z.hasResourceBundle(e, "webmapx")) {
1287
1287
  await Z.changeLanguage(e);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edugis-org/webmapx",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "A modular web map UI with built-in adapters for MapLibre, OpenLayers, Leaflet, and Cesium.",
5
5
  "license": "ISC",
6
6
  "author": "Anne Blankert",