This project is a customized TerriaMap build for Dudu Mapper.
- Branding and app title changed to Dudu Mapper
- Bottom attribution bar customized:
- Terria logo replaced with the ICIPE logo -
wwwroot/images/icipe-logo.png - Terria-specific links removed from bottom bar
- Leaflet/Cesium attribution kept
- Terria logo replaced with the ICIPE logo -
- UI cleanup:
- About button hidden for now
- Help button hidden for now
- Story button hidden for now
- Share panel "Advanced options" hidden for now
- Default map behavior:
- Default init set to
dudu - Home camera focused on East Africa
- Default viewer set to
3dSmooth - Default basemap set to OpenStreetMap
- Cesium Ion terrain disabled
- "3D Terrain" option hidden from Settings panel since terrain is not configured
- Default init set to
- Catalog customization:
- Sample data replaced with project-specific GeoServer WMS layers
- Model descriptions added for
CMP_Model,GAM_Model,GPR_Model
-
wwwroot/config.json
Main app config (branding, feature toggles, search providers, terrain settings). -
wwwroot/init/dudu.json
Default map setup (home camera, viewer mode, basemap, and WMS catalog items). -
wwwroot/index.ejs
Browser tab title template (Dudu Mapper). -
lib/Views/global.scss
UI overrides for hiding selected buttons/components. -
patches/terriajs+8.11.3.patch
Persistent TerriaJS component overrides generated bypatch-package.
Some UI customizations are implemented by patching files inside node_modules/terriajs.
These changes are persisted through patch-package so they are re-applied on install.
node_modules/terriajs/lib/ReactViews/Map/BottomBar/Credits/TerriaLogo.tsxnode_modules/terriajs/lib/ReactViews/Map/BottomBar/Credits/MapCredits.tsxnode_modules/terriajs/lib/ReactViews/Map/Panels/SharePanel/SharePanelContent.tsxnode_modules/terriajs/lib/ReactViews/Map/Panels/SettingPanel.tsx
Install dependencies:
yarn installBuild once:
yarn gulp buildRun server:
yarn startDevelopment watcher (build + server):
yarn gulp devUse either yarn start (after build) or yarn gulp dev, not both at once on the same port.
- WMS layers are configured in
wwwroot/init/dudu.json. - For 2D display in Leaflet, layers need Web Mercator support (
EPSG:3857) in practice. - If 2D fails but 3D works, verify GeoServer layer CRS/SRS support and advertised projections.
- Use direct WMS access when CORS is allowed by GeoServer; use proxy only when needed.
- "Give Feedback" behavior is controlled in
wwwroot/config.json supportEmailand/orfeedbackUrldefine where feedback is sent
For deployment guidance on AWS, see doc/deploying/deploying-to-aws.md.