Asset Loading

"/home/yossef/notes/git/projects/maplibra/flows/Asset Loading.md"

path: maplibra/flows/Asset Loading.md

- **fileName**: Asset Loading
- **Created on**: 2026-06-16 00:48:42

Asset Loading

Purpose: How the app resolves file paths across ZIP, network, overlay, and cached sources.

Related: ../Home.md, ../Architecture.md, ../modules/Asset System.md, ../modules/MVF Loading.md, ../modules/Pathfinding.md

Provider Hierarchy

The app creates a chain of asset providers depending on the startup mode:

File Upload Mode

ZIP Provider (mvfLoader.zip)
  → Overlay Provider (derived assets)
    → PathfindingController.assetProvider

URL Mode

ZIP Provider (mvfLoader.zip)
  + Network Provider (/assets)
    → Hybrid Provider
      → Overlay Provider (derived assets)
        → PathfindingController.assetProvider

Asset Root Mode

Network Provider (/assets)
  → PathfindingController.assetProvider

Cache Restore Mode

Network Provider (/assets)
  → Overlay Provider (cached derived assets)
    → PathfindingController.assetProvider

Provider Resolution Order

When a file is requested (e.g., routing/graph.json):

  1. Overlay Provider — check in-memory overrides first
  2. ZIP Provider — check the ZIP bundle
  3. Network Provider — fetch from server
  4. Return null if all fail

ZIP Provider Details

Network Provider Details

Overlay Provider Details

Important Files

How It Connects