The map.army Project Model — Projects, Layers, Symbols

Most pages on this site describe one piece of the workflow — placing a symbol, exporting a layer, creating a share. This page steps back and shows how those pieces fit together. Knowing the model up front makes the rest of the docs read more cleanly.

Three concepts, top to bottom

map.army organises a tactical situation into three nested concepts:

ConceptWhat it isWhere it lives
ProjectThe working session — your current map view, the set of open layers, and the application settings around them.In the browser, while the tab is open. The hosted app stores no per-user state on the server.
LayerA named container for symbols and tactical graphics. A project usually has several layers (blue forces, red forces, phase lines, …).Saved as a MilX file (.milxlyz or .milxly) when you export.
Symbol / Tactical graphicA single MIL-STD-2525 placement on a layer: a unit symbol, a phase line, a range ring, etc., with its position, affiliation, status, and modifiers.Inside the layer it belongs to.

The hierarchy is strict: every symbol belongs to exactly one layer; every layer belongs to the current project. Moving a symbol between layers is supported (see Edit Overlays — Move symbols between layers); a symbol that belongs to no layer is not a state the application can represent.

The project is the open browser tab

There is no “New Project” or “Open Project” menu. The project is implicit — it is whatever you have on screen right now: the map view, the active base map, the coordinate grid setting, the open layers, and the symbols on them. Close the tab without exporting and the project is gone.

Two practical consequences:

  1. Save by exporting. The supported “save your work” action is Export Overlays.milxlyz. Treat this like a Save As… command in a desktop application. See Export Overlays.
  2. Settings persist; data does not. Browser-stored preferences (language, unit settings, default symbol format) survive a reload. Layers stored only in the browser cache may or may not survive depending on cache state — see Session persistence below.

Layers are MilX

A layer in map.army is a MilX layer. The application internally and externally treats them identically — the file you export (.milxlyz) is the same content the application is editing. This is why most layer-related pages talk about “MilX layers” interchangeably with “overlays”.

Two non-MilX layer types are also supported but behave differently:

Layer typeCarries MilX symbology?Saved into .milxlyz?
MilX layerYesYes
Image overlayNo — it is an image file pinned to coordinatesNo — pair the image file with a sidecar config.json (Import Overlays)
Vector layerNo — it is GeoJSON / KML geometryNo — re-import after reload
Online-source layerDepends on sourceRe-fetched from the URL each session

When the docs say “save a layer” without qualification, they mean a MilX layer.

Sharing externalises a project

A MilX Share is the server-side equivalent of an exported .milxlyz: gs-soft’s backend keeps the MilX content under a public URL so other users can open it (read-only or edit, depending on the share type). Image overlays and vector layers do not travel with a share — only MilX symbology does.

A share is a way to publish your project externally; it is not “the project itself”. You can:

  • Export a .milxlyz and never create a share — your work stays local.
  • Create a share and never export — your work lives on gs-soft’s servers under the share URL.
  • Do both — the share is a published copy; the local file is your archive.

See How to create a share for the three share modes (Read Only, Edit & Copy, Edit & Overwrite).

Session persistence — what survives a reload

A short summary of what survives closing and reopening the tab:

ThingSurvives reload?
Application settings (language, units, default symbol format)Yes — kept in browser storage.
MilX layersPartially — kept in browser cache for the current site. Lost if site data is cleared.
Image overlaysNo, unless re-imported from the same config.json sidecar.
Vector layersNo — re-import after reload.
Online-source layersYes for the URL; the content is re-fetched each session.
An active layer’s “pencil” indicatorNo — switching to 3D and back also deactivates it; re-activate before placing new symbols.

For a fuller breakdown see Edit Overlays — Session persistence. The safe rule is: before closing the tab, export your MilX layers.

What this model is not

A few things map.army deliberately does not do, because the hosted version has no per-user state:

  • No project list / “open recent” — the application has no memory of yesterday’s session.
  • No autosave to a server. Browser caching is best-effort.
  • No multi-project workspace. You work on one set of layers at a time. To switch projects, export your current work, then import the other .milxlyz.

The professional offering (Free vs Pro) lifts some of these constraints — user accounts, server-side projects, role-based access — but those are project-scoped deployments, not part of the free hosted demo.