Status Trio
Status Trio는 macOS 메뉴바 앱으로 Wi‑Fi·배터리·볼륨을 하나의 아이콘에 통합합니다
NavGCC는 걸프 지역 인물·기업·기관을 지도화하고, 당신의 위치와 연결 경로를 제시합니다
The world is full of connections. Some you know, many you don't. NavGCC maps the people, companies and institutions shaping the Gulf, finds your place among them, and shows the paths to the people you
기타HTML · JavaScriptGitHub @qizhangumich온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기The world is full of connections. Some you know, many you don't. NavGCC maps the people, companies and institutions shaping the Gulf, finds your place among them, and shows the paths to the people you want to meet.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Full-scale, no-cap network map of Abu Dhabi's key industries, institutions and key people, organized in four layers — now with an automation pipeline for news and your LinkedIn network.
| File | What it is |
|---|---|
abu_dhabi_power_hub.html | The map. Open in any browser (keep it in this folder — it loads the three .js files below). |
network_data.js | Source of truth. All sectors, institutions, people, ownership, family ties, aliases. Edit → refresh browser. No build step. |
news_data.js | Auto-generated news signals (tools/match_news.py). |
my_network.js | Auto-generated LinkedIn overlay (tools/import_linkedin.py). Private — keep local. |
news_inbox/ | Drop news articles here as .md/.txt (two [SAMPLE] items included — delete them). |
tools/ | Automation scripts (Python 3, stdlib only). |
data_dictionary.md | Data model and operating rules. |
abu_dhabi_power_hub_v1_plotly_backup.html | Old V1 Plotly map, kept for reference. |
| Layer | Contents |
|---|---|
| L0 · Ruling Core | Al Nahyan ruling family, Presidential Court, Executive Council, SCFEA, UAE Cabinet |
| L1 · Sovereign Capital & State | ADIA, Mubadala, ADQ, IHC/Royal Group, department chairs, ministers, super-connectors |
| L2 · Operators & Sector Leaders | Operating companies and their CEOs across every sector |
| L3 · Private & International Partners | Energy majors (TotalEnergies, bp, Shell, Exxon…), Big Tech (Microsoft, OpenAI, NVIDIA), global finance (BlackRock, Goldman), consulting/audit/law gatekeepers, local private groups (Waha, Trojan, Rotana…) |
Local-people policy: global HQ executives (Sam Altman, Jensen Huang, Larry Fink, the
energy-major CEOs, …) are deliberately excluded — the people layer is local. L3 companies
are anchor nodes; the people who serve them in the UAE surface through the LinkedIn overlay,
and get promoted into PEOPLE once their local role (country manager, UAE managing partner,
Gulf CEO) is verified.
Sectors = GICS 11 + government-side, identical across every region:
Energy 能源 · Materials 原材料 · Industrials 工业 (incl. transport, defense companies,
professional services) · Consumer Discretionary 可选消费 · Consumer Staples 必选消费 ·
Health Care 医疗保健 · Financials 金融 · Information Technology 信息技术 ·
Communication Services 通信服务 (telecom + media + entertainment/sport) · Utilities 公用事业 ·
Real Estate 房地产 — plus Government & Political, Sovereign Capital, Education & Research,
Family Conglomerates. Every region covers all 11 GICS sectors (checked by
tools/gics_migrate.py conventions; keys: energy, materials, industry, consumer_disc, consumer_stap, health, finance, tech, comm, utilities, realestate, gov, sovereign, education, conglomerate).
3 edge types (roles, ownership/control, family) · power score drives node size. Current scale: ~100 people · ~143 institutions · ~298 edges. No cap.
.github/workflows/update.yml runs every 6 hours on GitHub Actions:
fetch fresh news (tools/fetch_news.py, Google News RSS for 20 entity queries)
→ match to network nodes → detect co-mentions → commit. The Alicloud server
pulls every 5 minutes, so new signals appear on the live map unattended.
Candidate relationships accumulate in data/suggested_edges.csv — entity pairs
that keep sharing articles but have no edge yet; review and promote the real
ones into ownership.csv/roles.csv.
For manual data edits, one command does everything:
python tools/update.py "describe the change"
(validates + imports CSVs, re-matches news, commits, pushes → live in ~5 min)
python tools/match_news.py
Drop articles into news_inbox/ (2026-08-25_title.md; first line = title; optional
source: / url: lines). The matcher scans them against every node name + alias
(AKA block in network_data.js), handles line-broken names, suppresses
fragment false-positives ("Al Jaber" inside "Sultan Al Jaber"), and regenerates
news_data.js. Matched nodes get a gold badge on the map and a
Recent signals section in their panel. Idempotent — re-run any time.
python tools/import_linkedin.py
Export your connections first: LinkedIn → Settings & Privacy → Data privacy →
Get a copy of your data → Connections → put Connections.csv in this folder.
The importer fuzzy-matches employers against all institutions (suffix-stripping,
alias-aware) and writes my_network.js. Institutions you can reach get a
green dashed ring and your contacts appear in their detail panel — so the path
you → contact → institution → key person is visible on the map.
Privacy: my_network.js contains your personal contacts — never share it with the map.
The database is not static. Growth runs on three streams, executed by the daily 9 AM enrichment agent (a scheduled Claude session on this machine):
data/backfill_queue.csv (regenerated by
tools/backfill_queue.py) lists every institution still thin on leadership,
priority-ordered. The agent works the queue daily — researching each company's
current chairman/CEO/board with sources and adding them.ns flags re-checked against official sources and
flipped to v (or corrected), rotating through the regions weekly.
Every dossier also carries a Search on LinkedIn ↗ button (people-search
prefilled with the entity name) for manual network digging; automated LinkedIn
scraping is deliberately not part of the system (ToS) — use the official
Connections.csv export + tools/import_linkedin.py for your own network.The same pattern extends to any content: put items in an inbox, match on the alias
table, emit a *_data.js overlay. Candidates: press releases, tender awards,
event attendee lists, podcast transcripts.
The engine lives in map_template.html (stamped into every region page by
tools/build_regions.py); the landing page is the hand-editable index.html.
Connections.csv
export, a profile link, or manually) appear as a "You" pin linked to them; organizations
where unmatched contacts work become possible ways in. Updates live, no reload.?demo=1) — sample contacts that
are clearly labeled and never mixed with real data.dvh and visualViewport; reduced-motion respected.EN / 中文 switches UI chrome only; all data stays English. window.__map exposes a
debug/automation handle.
Repo: https://github.com/qizhangumich/power_network — index.html is the site entry
(identical to abu_dhabi_power_hub.html); zero-config static hosting.
git push then auto-deploys. Or CLI: vercel login
once, then vercel --prod in this folder..gitignore keeps my_network.js (your LinkedIn contacts) and
Connections.csv out of the repo — the public site simply shows no LinkedIn overlay.
Never commit these files.Facts vs. analysis stay separate. Roles/edges marked needs source are public-record but not yet re-verified against an official page. L3 "advisory ecosystem" edges (consultancies → ADDED etc.) are deliberately generic — replace with specific sourced engagements as you learn them. Parked V1 names pending role verification: Etienne Petit, Sherif Tawfik, Mohamed Almarzooqi.
Eight maps on one engine, linked by the folded region menu in the top bar:
| Path | Region | Core |
|---|---|---|
/ | Abu Dhabi | Al Nahyan · ADIA/Mubadala/ADQ/IHC · full news pipeline |
/dubai/ | Dubai | Al Maktoum · ICD/Dubai Holding · Emirates/DP World/Emaar |
/northern/ | Sharjah · RAK · Fujairah · Ajman · UAQ | Al Qasimi/Al Sharqi/Al Nuaimi/Al Mualla · Crescent/BEEAH/Wynn |
/saudi/ | Saudi Arabia | Al Saud (MBS) · PIF/Aramco · giga-projects |
/qatar/ | Qatar | Al Thani · QIA/QatarEnergy · LNG partners |
/bahrain/ | Bahrain | Al Khalifa · Mumtalakat/Bapco/Investcorp |
/oman/ | Oman | Al Said · OIA/OQ/PDO |
/kuwait/ | Kuwait | Al Sabah · KIA/KPC · merchant families |
Each region: <region>/network_data.js (same schema). tools/build_regions.py
stamps every region page from the root index.html, so design changes propagate
everywhere (update.py runs it; a region ships once its network_data.js exists —
add a new one by adding a row to REGIONS and a dataset).
News automation + CSV layer currently cover Abu Dhabi only; per-region
parameterization is the next step. All non-AD datasets are V1 backbones —
review the ns flags.