From 65d602a6f8ca11e126e34874dad32ab44481e72a Mon Sep 17 00:00:00 2001 From: Ole-Morten Duesund Date: Sun, 24 Aug 2025 23:28:08 +0200 Subject: [PATCH] Update architecture documentation to reflect in-memory ICAO database MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove outdated SQLite references and update documentation to accurately describe the current in-memory ICAO allocation database implementation with binary search lookups. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- docs/ARCHITECTURE.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index a018249..edd68ff 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -97,14 +97,14 @@ SkyView is a high-performance, multi-source ADS-B aircraft tracking system built **Purpose**: Provides comprehensive ICAO address to country mapping **Key Features**: -- Embedded SQLite database with 70+ allocations covering 40+ countries -- Based on official ICAO Document 8585 -- Fast range-based lookups using database indexing -- Country names, ISO codes, and flag emojis +- In-memory database with 100+ allocations covering 70+ countries and territories +- Based on official aerotransport.org ICAO allocation tables +- Fast binary search lookups on sorted allocation ranges +- Complete country names, ISO codes, and flag emojis +- Zero external dependencies - pure Go implementation **Files**: -- `database.go`: SQLite database interface -- `icao.db`: Embedded SQLite database with ICAO allocations +- `database.go`: In-memory ICAO allocation database with binary search ### 5. HTTP/WebSocket Server (`internal/server/`) @@ -157,7 +157,7 @@ SkyView is a high-performance, multi-source ADS-B aircraft tracking system built ### 3. Country Lookup 1. **ICAO Extraction**: Extract 24-bit ICAO address from aircraft data -2. **Database Query**: Lookup country information in embedded SQLite database +2. **Database Query**: Lookup country information in in-memory database using binary search 3. **Data Enrichment**: Add country, country code, and flag to aircraft state ### 4. Data Distribution @@ -256,7 +256,6 @@ SkyView is a high-performance, multi-source ADS-B aircraft tracking system built - **Leaflet.js**: https://leafletjs.com/ - Interactive maps - **Three.js**: https://threejs.org/ - 3D visualization - **Chart.js**: https://www.chartjs.org/ - Statistics charts -- **SQLite**: https://www.sqlite.org/ - ICAO country database - **WebSocket Protocol**: RFC 6455 ### ADS-B Ecosystem