
3D 다중 도메인 전술 정보 지도 — 실시간 선박, 항공편, 위성, 케이블 및 우주 날씨를 브라우저에서 확인. 시간 스크러빙, 시나리오 재생, 물리 기반 이상 탐지.
세상의 움직이는 모든 것들에 대한 실시간 3D 지도: 실시간 선박 교통(AIS), 항공기, 위성, 해저 케이블, 항구, 요충지 및 우주 날씨 — 150만 포인트 지형 구름, 주야간, 해양 시뮬레이션 및 시네마틱 카메라 워크로 렌더링됩니다. Three.js와 순수 ES 모듈로 제작되었습니다. 빌드 단계나 프레임워크가 필요 없습니다.
▶ 라이브 데모 — 가입 불필요: 시작 화면에서 VIEW DEMO를 클릭하여 합성 트래픽을 보거나, 무료 aisstream.io 키를 붙여넣어 실시간 글로벌 선박 데이터를 확인하세요.

git clone https://github.com/jamalrfordii-arch/Vanguard-Map.git
cd Vanguard-Map
npx serve . # or: python -m http.server 3000
하드웨어 가속이 활성화된 Chromium 브라우저에서 http://localhost:3000을 엽니다.
실시간 선박 데이터 (무료): 앱이 처음 로드될 때 aisstream.io API 키를 입력하라는 메시지가 표시됩니다. 무료 가입이며, 키는 브라우저의 localStorage에 저장됩니다.
고해상도 지형 타일 (선택 사항): cesium.com/ion → Access Tokens에서 무료 토큰을 받은 후, DevTools에서 다음을 실행하세요: localStorage.setItem('vg1_cesium_token', 'YOUR_TOKEN'). 이 작업을 하지 않으면 지도는 모든 확대/축소 수준에서 포인트 클라우드 지형을 사용합니다.
항공편 및 AI 부조종사 (선택 사항): 로컬 프록시가 필요합니다 — 두 번째 터미널에서 node flight-proxy.js를 실행하세요. 이 프록시 없이는 해당 레이어가 비활성화되며, 다른 모든 기능은 정상 작동합니다.
지도는 시뮬레이션된 시계와 플러그 가능한 데이터 소스에서 실행됩니다 — DevTools 콘솔:
simClock.setTime('2026-05-10T12:00:00Z') // scrub the world to any moment
simClock.setRate(60) // 1 real second = 1 sim minute
vg1Scenario.load('./scenarios/hormuz-demo.json') // inject scripted synthetic vessels
vg1Scenario.record(); vg1Scenario.save() // capture live AIS to NDJSON
vg1Scenario.replay('./captures/x.ndjson') // replay a capture
vg1Invariants.stats() // physics-violation ledger (spoof/teleport detection)
합성 선박은 예약된 999… MMSI를 사용하며 scenarios/*.json에 스크립팅되어 있습니다.
node tests/invariants.test.mjs
도메인별 하나의 매니저(aisManager, flightManager, satelliteManager, …)가 있으며, vg1:* DOM 이벤트를 통해서만 통신합니다 — 상호 임포트는 없습니다. 모든 위치 보고는 엔터티를 이동시키기 전에 물리 불변 게이트(invariants.js)를 통과합니다. 전체 모듈 맵과 기여 규칙은 CLAUDE.md를 참조하세요.
GitHub Issue를 열어 주세요 — 버그 보고서, 기능 아이디어, 그리고 "내 컴퓨터에서 N fps로 실행되었다"는 보고도 모두 유용합니다.