1<!DOCTYPE html><html lang="en" class="inter_b2991b2-module__9mH_6q__variable jetbrains_mono_d5591ac2-module__D88TVW__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/chunks/0ntcse3913hc-.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/1jq4o6yq14o4c.js"/>
1<script src="/_next/static/chunks/0atut6a2uuyid.js" async=""></script>
1<script src="/_next/static/chunks/3rxl-jt3pdxgx.js" async=""></script>
1<script src="/_next/static/chunks/turbopack-38l7qwik-h828.js" async=""></script>
1<script src="/_next/static/chunks/158myu8e_yme3.js" async=""></script>
1<script src="/_next/static/chunks/2xt0wequmkz6f.js" async=""></script>
1<meta name="next-size-adjust" content=""/><title>ATC Academy AI â AI-Powered Aviation Radio Trainer | Developed by Justine Lopez (@justpres)</title><meta name="description" content="Master Air Traffic Control communication with FAA/ICAO phraseology, interactive speech feedback, and crew briefings. Developed by Justine Lopez (@justpres)."/><link rel="author" href="https://github.com/JustPres"/><meta name="author" content="Justine Lopez"/><meta name="keywords" content="Justine Lopez,justpres,atc-simulator,ATC Academy AI,Aviation Radio Trainer,Air Traffic Control Simulator,SpaceX Flight Test Radio Suite,FAA phraseology,ICAO phraseology"/><meta name="creator" content="Justine Lopez (@justpres)"/><meta name="publisher" content="Justine Lopez (@justpres)"/><meta name="robots" content="index, follow"/><meta name="geo.region" content="PH-NCR"/><meta name="geo.placename" content="Manila"/><meta name="geo.position" content="14.5995;120.9842"/><meta name="ICBM" content="14.5995, 120.9842"/><link rel="canonical" href="https://atcsimulation.vercel.app"/><meta property="og:title" content="ATC Academy AI â AI-Powered Aviation Radio Trainer"/><meta property="og:description" content="Master Air Traffic Control communication with FAA/ICAO phraseology, interactive speech feedback, and crew briefings. Developed by Justine Lopez (@justpres)."/><meta property="og:url" content="https://atcsimulation.vercel.app"/><meta property="og:site_name" content="ATC Academy AI"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://atcsimulation.vercel.app/opengraph-image.jpg?opengraph-image.3tagct23p861d.jpg"/><meta property="og:image:type" content="image/jpeg"/><meta property="og:image:width" content="1376"/><meta property="og:image:height" content="768"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:creator" content="@justpres"/><meta name="twitter:title" content="ATC Academy AI â Developed by Justine Lopez (@justpres)"/><meta name="twitter:description" content="Master Air Traffic Control communication with FAA/ICAO phraseology. Created by Justine Lopez (@justpres)."/><meta name="twitter:image" content="https://atcsimulation.vercel.app/twitter-image.jpg?twitter-image.3tagct23p861d.jpg"/><meta name="twitter:image:type" content="image/jpeg"/><meta name="twitter:image:width" content="1376"/><meta name="twitter:image:height" content="768"/><link rel="icon" href="/icon.jpg?icon.1nvizb-ckyfem.jpg" sizes="1024x1024" type="image/jpeg"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://atcsimulation.vercel.app/#website","url":"https://atcsimulation.vercel.app","name":"ATC Academy AI","description":"Learn to communicate with Air Traffic Control using FAA/ICAO phraseology, interactive speech feedback, and gamified progress.","publisher":{"@id":"https://atcsimulation.vercel.app/#person"},"creator":{"@id":"https://atcsimulation.vercel.app/#person"}},{"@type":"SoftwareApplication","@id":"https://atcsimulation.vercel.app/#software","name":"ATC Academy AI","operatingSystem":"All Web Browsers","applicationCategory":"EducationalApplication","offers":{"@type":"Offer","price":"0","priceCurrency":"USD"}},{"@type":"FAQPage","@id":"https://atcsimulation.vercel.app/#faq","mainEntity":[{"@type":"Question","name":"What is ATC Academy AI?","acceptedAnswer":{"@type":"Answer","text":"ATC Academy AI is an advanced, high-fidelity aviation radio training simulator themed around a SpaceX Flight Test Telemetry console. It utilizes interactive speech recognition to help pilots master Air Traffic Control (ATC) radio phraseology and readback procedures in compliance with FAA/ICAO guidelines."}},{"@type":"Question","name":"Why is the aviation phonetic alphabet spelled Alfa and Juliett instead of Alpha and Juliet?","acceptedA
1nswer":{"@type":"Answer","text":"The International Civil Aviation Organization (ICAO) spelling uses 'Alfa' and 'Juliett' to avoid spelling and pronunciation errors globally. Using 'f' in Alfa prevents non-English speakers from mispronouncing the 'ph' sound, and the extra 't' in Juliett ensures French speakers pronounce the final 't'."}},{"@type":"Question","name":"How are numbers pronounced in Air Traffic Control radio communications?","acceptedAnswer":{"@type":"Answer","text":"Aviation radio communications mandate distinct pronunciations to avoid confusion: the number 3 is spoken as 'TREE', 5 is spoken as 'FIFE', and 9 is spoken as 'NINER'. Other digits are spoken individually, such as 'WUN' (1), 'TOO' (2), and 'ZEE-RO' (0)."}}]},{"@type":"Person","@id":"https://atcsimulation.vercel.app/#person","name":"Justine Lopez","alternateName":"justpres","gender":"http://schema.org/Male","jobTitle":"Lead Systems Engineer & Creator","url":"https://github.com/JustPres","sameAs":["https://github.com/JustPres/atc-simulator.git","https://github.com/JustPres"],"knowsAbout":["Aviation","Air Traffic Control","Software Engineering","AI Development","Aerospace Systems","React","Next.js"]}]}</script>
1<script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script>
1</head><body class="antialiased bg-bg-primary text-text-primary min-h-screen"><div hidden=""><!--$--><!--/$--></div><div class="flex flex-col h-screen bg-black text-white font-sans overflow-hidden"><header class="w-full bg-black border-b border-[#2a2a2f] px-6 py-4 flex items-center justify-between shrink-0 select-none z-40"><div class="flex items-center space-x-3"><div class="p-1.5 border border-[#3a3a3f]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-radio w-4 h-4 text-white animate-pulse" aria-hidden="true"><path d="M16.247 7.761a6 6 0 0 1 0 8.478"></path><path d="M19.075 4.933a10 10 0 0 1 0 14.134"></path><path d="M4.925 19.067a10 10 0 0 1 0-14.134"></path><path d="M7.753 16.239a6 6 0 0 1 0-8.478"></path><circle cx="12" cy="12" r="2"></circle></svg></div><div><span class="font-bold text-xs tracking-[1.5px] uppercase block leading-none">SpaceX Aerospace</span><span class="text-[10px] text-[#8a8a8f] font-normal tracking-[1px] uppercase block mt-1">Flight Test Radio Suite</span></div></div><nav class="hidden md:flex items-center space-x-8 text-xs font-bold tracking-[1.2px] uppercase"><button class="transition-all pb-1.5 border-b uppercase border-white text-white">Dashboard</button><button class="transition-all pb-1.5 border-b uppercase border-transparent text-[#8a8a8f] hover:text-white">Flight Simulator</button><button class="transition-all pb-1.5 border-b uppercase border-transparent text-[#8a8a8f] hover:text-white">Crew Briefings</button></nav><div class="hidden md:flex items-center space-x-6 text-[10px] font-bold tracking-[1px] text-[#8a8a8f] uppercase"><div><span class="text-white">XP:</span> <!-- -->0</div><div><span class="text-white">RANK:</span> <!-- -->1</div><div><span class="text-white">STREAK:</span> <!-- -->1<!-- --> DAYS</div></div><div class="md:hidden flex items-center space-x-3"><span class="text-[10px] text-[#8a8a8f] font-bold uppercase">0<!-- --> XP</span><button class="p-1.5 border border-[#2a2a2f] text-white bg-[#0a0a0a]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu w-4 h-4" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></header><main class="flex-1 flex flex-col min-h-0 relative bg-black"><div class="flex-1 overflow-y-auto w-full flex flex-col items-center relative min-h-full"><canvas class="fixed inset-0 w-screen h-screen block z-0 bg-black pointer-events-none select-none"></canvas><div class="absolute inset-0 bg-black/65 z-0"></div><div class="w-full max-w-5xl px-6 py-12 md:py-16 space-y-12 z-10 animate-slide-up"><div class="flex flex-col md:flex-row md:items-end justify-between gap-6 border-b border-[#3a3a3f] pb-6"><div class="space-y-2 flex-1 min-w-0"><div class="flex items-center space-x-2 text-[10px] font-bold text-[#8a8a8f] tracking-[1.5px] uppercase select-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity w-3.5 h-3.5 text-white animate-pulse" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg><span>Telemetry Feed // Pilot Deck Alpha</span></div><div class="space-y-1"><span class="text-xs font-bold text-[#8a8a8f] uppercase tracking-[1px] block select-none">Welcome, Cadet</span><div class="flex items-center gap-3 group"><h1 class="text-3xl md:text-5xl font-bold tracking-[1.5px] uppercase text-white font-sans leading-none break-all">Aviation Cadet</h1><button class="p-1.5 text-[#8a8a8f] hover:text-white transition-all border border-transparent hover:border-[#3a3a3f] rounded-none cursor-pointer flex items-center" title="Edit Pilot Name"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-pen w-4 h-4" aria-hidden="true"><path d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"></path></svg></button></div></div><p class="text-xs text-[#8a8a8f] tracking-[0.5px] uppercase select-none">Assigned Radio calls: Verbatim check sequence requested</p></div><div class="flex items-center gap-4 text-xs font-bold tracking-[1px] uppercase text-[#8a8a8f] shrink-0 select-none"><div class="flex items-center gap-3 border border-[#3a3a3f] px-4 py-2.5 bg-black/55 backdrop-blur-sm relative hover:border-white transition-all duration-300"><div class="absolute top-0 left-0 w-[4px] h-[4px] bg-white border-t border-l border-white"></div><div class="absolute bottom-0 right-0 w-[4px] h-[4px] bg-white border-b border-r border-white"></div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-flame w-4 h-4 text-amber-500 animate-pulse shrink-0" aria-hidden="true"><path d="M12 3q1 4 4 6.5t3 5.5a1 1 0 0 1-14 0 5 5 0 0 1 1-3 1 1 0 0 0 5 0c0-2-1.5-3-1.5-5q0-2 2.5-4"></path></svg><div class="flex flex-col leading-none"><span class="text-white text-sm font-mono whitespace-nowrap">1<!-- -->D</span><span class="text-[8px] text-[#8a8a8f] mt-1 whitespace-nowrap">STREAK</span></div></div><div class="flex items-center gap-3 border border-[#3a3a3f] px-4 py-2.5 bg-black/55 backdrop-blur-sm relative hover:border-white transition-all duration-300"><div class="absolute top-0 left-0 w-[4px] h-[4px] bg-white border-t border-l border-white"></div><div class="absolute bottom-0 right-0 w-[4px] h-[4px] bg-white border-b border-r border-white"></div><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star w-4 h-4 text-amber-400 shrink-0" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg><div class="flex flex-col leading-none"><span class="text-white text-sm font-mono whitespace-nowrap">0</span><span class="text-[8px] text-[#8a8a8f] mt-1 whitespace-nowrap">TOTAL XP</span></div></div></div></div><div class="grid grid-cols-1 md:grid-cols-3 gap-8"><div class="md:col-span-2 border border-[#3a3a3f] p-6 bg-black/40 backdrop-blur-sm flex flex-col justify-between space-y-6"><div class="flex items-center justify-between border-b border-[#2a2a2f] pb-4"><div class="flex items-center space-x-4"><div class="relative flex flex-col items-center justify-end p-2 pb-3.5 bg-gradient-to-b from-[#141416] to-[#08080a] border border-[#3a3a3f] rounded-[2px] shadow-2xl select-none group transition-all duration-300 hover:border-amber-500/40 " style="width:44px;height:72px;box-shadow:inset 0 0 10px rgba(0,0,0,0.9), 0 4px 12px rgba(0,0,0,0.5)"><div class="absolute top-2 w-2 h-2 rounded-full bg-[#1e1e21] border border-[#44444a] shadow-inner flex items-center justify-center"><div class="w-0.5 h-0.5 rounded-full bg-[#8a8a8f] opacity-80"></div></div><div class="absolute inset-1 border border-dashed border-[#222225] rounded-[1px] pointer-events-none"></div><div class="w-full flex flex-col items-center gap-1 z-10"><div class="w-full h-1.5 bg-gradient-to-r from-amber-600 via-amber-400 to-amber-600 border-t border-amber-300/30 border-b border-amber-800/80 shadow-[0_1px_3px_rgba(0,0,0,0.4),0_0_6px_rgba(245,158,11,0.25)] rounded-[1px]" title="Str
1ipe 1"></div></div></div><div class="space-y-1"><span class="text-[10px] font-bold text-[#8a8a8f] uppercase tracking-[1.5px]">Flight Certification License</span><h3 class="text-lg font-bold text-white uppercase tracking-[1px]">Ground School Student</h3></div></div><span class="text-xs font-bold text-white border border-white px-3 py-1.5 rounded-full">Level <!-- -->1</span></div><div class="space-y-3"><div class="flex justify-between items-center text-[10px] font-bold tracking-[1px] text-[#8a8a8f] uppercase"><span>Next milestone: <!-- -->Solo Student</span><span class="text-white">500<!-- --> XP Required</span></div><div class="w-full bg-[#1c1c1f] h-[2px]"><div class="bg-white h-full transition-all duration-500" style="width:0%"></div></div></div></div><div class="border border-[#3a3a3f] p-6 bg-black/40 backdrop-blur-sm flex flex-col justify-between space-y-6"><div class="space-y-2"><span class="text-[9px] font-bold text-[#8a8a8f] uppercase tracking-[1.5px]">Rapid System Launch</span><h3 class="text-sm font-bold text-white uppercase tracking-[1px]">Initialize Simulator</h3><p class="text-xs text-[#8a8a8f] leading-relaxed">Direct entry to avionics HUD test grounds. Test radio readbacks and squawk parameters.</p></div><button class="spacex-btn-filled w-full">Start Simulator</button></div></div><div class="grid grid-cols-1 lg:grid-cols-3 gap-10"><div class="lg:col-span-2 space-y-6"><h2 class="text-xs font-bold text-[#8a8a8f] tracking-[1.5px] uppercase flex items-center space-x-2 border-b border-[#2a2a2f] pb-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-terminal w-4 h-4 text-white" aria-hidden="true"><path d="M12 19h8"></path><path d="m4 17 6-6-6-6"></path></svg><span>Active Simulator Test Cards</span></h2><div class="divide-y divide-[#2a2a2f]"><div class="py-4 flex items-center justify-between transition-all group"><div class="flex items-center space-x-4"><div class="text-[9px] font-bold text-[#8a8a8f] border border-[#2a2a2f] px-2 py-1.5 bg-black/25">CARD-<!-- -->001</div><div><div class="flex items-center space-x-2"><h3 class="text-xs font-bold text-white group-hover:text-[#8a8a8f] transition-all uppercase tracking-[0.5px]">First Contact</h3><span class="text-[8px] font-bold px-1.5 py-0.5 border border-[#2a2a2f] text-[#8a8a8f] uppercase">beginner</span></div><p class="text-[11px] text-[#8a8a8f] mt-1 line-clamp-1">Learn to listen to and understand ATIS (Automatic Terminal Information Service). ATIS provides current weather, active runways, and important notices. Every flight begins here.</p></div></div><button class="text-[10px] font-bold tracking-[1px] uppercase border border-white/30 hover:border-white text-white px-4 py-2 transition-all hover:bg-white hover:text-black">Launch</button></div><div class="py-4 flex items-center justify-between transition-all group"><div class="flex items-center space-x-4"><div class="text-[9px] font-bold text-[#8a8a8f] border border-[#2a2a2f] px-2 py-1.5 bg-black/25">CARD-<!-- -->002</div><div><div class="flex items-center space-x-2"><h3 class="text-xs font-bold text-white group-hover:text-[#8a8a8f] transition-all uppercase tracking-[0.5px]">Ground Control</h3><span class="text-[8px] font-bold px-1.5 py-0.5 border border-[#2a2a2f] text-[#8a8a8f] uppercase">beginner</span></div><p class="text-[11px] text-[#8a8a8f] mt-1 line-clamp-1">Request taxi clearance from ground control. You'll learn to state your position, destination runway, and current ATIS information. This is your first real radio call!</p></div></div><button class="text-[10px] font-bold tracking-[1px] uppercase border border-white/30 hover:border-white text-white px-4 py-2 transition-all hover:bg-white hover:text-black">Launch</button></div><div class="py-4 flex items-center justify-between transition-all group"><div class="flex items-center space-x-4"><div class="text-[9px] font-bold text-[#8a8a8f] border border-[#2a2a2f] px-2 py-1.5 bg-black/25">CARD-<!-- -->003</div><div><div class="flex items-center space-x-2"><h3 class="text-xs font-bold text-white group-hover:text-[#8a8a8f] transition-all uppercase tracking-[0.5px]">Hold Short!</h3><span class="text-[8px] font-bold px-1.5 py-0.5 border border-[#2a2a2f] text-[#8a8a8f] uppercase">beginner</span></div><p class="text-[11px] text-[#8a8a8f] mt-1 line-clamp-1">Practice the most safety-critical instruction in aviation ground operations. When ATC says "hold short," you MUST stop before the runway. Getting this wrong in real life can be catastrophic.</p></div></div><button class="text-[10px] font-bold tracking-[1px] uppercase border border-white/30 hover:border-white text-white px-4 py-2 transition-all hover:bg-white hover:text-black">Launch</button></div><div class="py-4 flex items-center justify-between transition-all group"><div class="flex items-center space-x-4"><div class="text-[9px] font-bold text-[#8a8a8f] border border-[#2a2a2f] px-2 py-1.5 bg-black/25">CARD-<!-- -->004</div><div><div class="flex items-center space-x-2"><h3 class="text-xs font-bold text-white group-hover:text-[#8a8a8f] transition-all uppercase tracking-[0.5px]">Ready for Departure</h3><span class="text-[8px] font-bold px-1.5 py-0.5 border border-[#2a2a2f] text-[#8a8a8f] uppercase">beginner</span></div><p class="text-[11px] text-[#8a8a8f] mt-1 line-clamp-1">Contact the tower controller and report ready for departure. Learn the critical difference between saying "ready for departure" (correct) and "ready for takeoff" (WRONG â never say takeoff until cleared!).</p></div></div><button class="text-[10px] font-bold tracking-[1px] uppercase border border-white/30 hover:border-white text-white px-4 py-2 transition-all hover:bg-white hover:text-black">Launch</button></div><div class="py-4 flex items-center justify-between transition-all group"><div class="flex items-center space-x-4"><div class="text-[9px] font-bold text-[#8a8a8f] border border-[#2a2a2f] px-2 py-1.5 bg-black/25">CARD-<!-- -->005</div><div><div class="flex items-center space-x-2"><h3 class="text-xs font-bold text-white group-hover:text-[#8a8a8f] transition-all uppercase tracking-[0.5px]">Cleared for Takeoff</h3><span class="text-[8px] font-bold px-1.5 py-0.5 border border-[#2a2a2f] text-[#8a8a8f] uppercase">easy</span></div><p class="text-[11px] text-[#8a8a8f] mt-1 line-clamp-1">Receive and correctly read back a takeoff clearance. This is the moment every pilot trains for. The word "takeoff" is only used in two situations: when ATC clears you, and when they cancel it.</p></div></div><button class="text-[10px] font-bold tracking-[1px] uppercase border border-white/30 hover:border-white text-white px-4 py-2 transition-all hover:bg-white hover:text-black">Launch</button></div></div></div><div class="space-y-6"><h2 class="text-xs font-bold text-[#8a8a8f] tracking-[1.5px] uppercase flex items-center space-x-2 border-b border-[#2a2a2f] pb-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open w-4 h-4 text-white" aria-hidden="true"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg><span>
1Briefings Material</span></h2><div class="border border-[#3a3a3f] p-6 bg-black/40 backdrop-blur-sm space-y-6"><p class="text-xs text-[#8a8a8f] leading-relaxed">Review pilot phraseology rules, restricted space limits, and system checkout sheets. Pass checkpoint tests to level up.</p><div class="border border-[#2a2a2f] p-3 text-[10px] flex justify-between items-center text-[#8a8a8f]"><div><span class="block font-bold text-white uppercase tracking-[0.5px]">Syllabus status</span><span class="block text-[9px] text-[#8a8a8f] mt-0.5">10 courses configured</span></div><span class="text-white border border-white px-2 py-0.5">+250 XP</span></div><button class="spacex-btn-ghost w-full">Browse Syllabus</button></div></div></div><section class="w-full border border-[#2a2a2f] bg-black/40 backdrop-blur-sm p-6 md:p-8 space-y-6 select-none" id="faq"><div class="flex items-center space-x-3 border-b border-[#2a2a2f] pb-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-question-mark w-5 h-5 text-white animate-pulse" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg><div><h2 class="font-bold text-xs tracking-[1.5px] uppercase text-white leading-none">AI Answer Center</h2><span class="text-[9px] text-[#8a8a8f] font-mono tracking-[1px] uppercase block mt-1">Answer Engine Optimized // Direct Aviation Phraseology Database</span></div></div><div class="space-y-4"><details class="group border border-[#2a2a2f] bg-[#0a0a0a]/80 transition-all duration-300 hover:border-[#3a3a3f]"><summary class="flex items-center justify-between p-4 cursor-pointer list-none select-none focus:outline-none"><h3 class="text-xs font-bold tracking-[1.2px] uppercase text-[#f0f0fa] group-hover:text-white transition-colors pr-4">What is ATC Academy AI?</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4 text-[#8a8a8f] group-open:rotate-180 transition-transform shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></summary><div class="p-4 pt-0 border-t border-[#2a2a2f]/50 text-xs text-[#8a8a8f] space-y-3 leading-relaxed font-sans"><p class="text-[#f0f0fa]/95 font-medium border-l border-white/20 pl-3">ATC Academy AI is a high-fidelity aviation radio training simulator themed around a SpaceX Flight Test Telemetry console. It uses interactive speech recognition to help pilots and aviation crew master Air Traffic Control (ATC) voice phraseology and readback procedures in compliance with FAA/ICAO standards.</p><p class="text-[11px] text-[#8a8a8f]">Designed as an offline-first, browser-based tool, it uses modern web APIs for speech processing, ensuring pilots can train their radio communications safely without live network requirements.</p></div></details><details class="group border border-[#2a2a2f] bg-[#0a0a0a]/80 transition-all duration-300 hover:border-[#3a3a3f]"><summary class="flex items-center justify-between p-4 cursor-pointer list-none select-none focus:outline-none"><h3 class="text-xs font-bold tracking-[1.2px] uppercase text-[#f0f0fa] group-hover:text-white transition-colors pr-4">Why is the aviation phonetic alphabet spelled 'Alfa' and 'Juliett'?</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4 text-[#8a8a8f] group-open:rotate-180 transition-transform shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></summary><div class="p-4 pt-0 border-t border-[#2a2a2f]/50 text-xs text-[#8a8a8f] space-y-3 leading-relaxed font-sans"><p class="text-[#f0f0fa]/95 font-medium border-l border-white/20 pl-3">The International Civil Aviation Organization (ICAO) spelling uses 'Alfa' and 'Juliett' to avoid spelling and pronunciation errors globally. Using 'f' in Alfa prevents non-English speakers from mispronouncing the 'ph' sound, and the extra 't' in Juliett ensures French speakers pronounce the final 't'.</p><p class="text-[11px] text-[#8a8a8f]">The spelling of standard letters like Alfa, Bravo, and Juliett is mandated under international treaties to guarantee cross-lingual safety over noisy radio frequencies.</p></div></details>
1<details class="group border border-[#2a2a2f] bg-[#0a0a0a]/80 transition-all duration-300 hover:border-[#3a3a3f]"><summary class="flex items-center justify-between p-4 cursor-pointer list-none select-none focus:outline-none"><h3 class="text-xs font-bold tracking-[1.2px] uppercase text-[#f0f0fa] group-hover:text-white transition-colors pr-4">How are numbers pronounced in Air Traffic Control radio communications?</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4 text-[#8a8a8f] group-open:rotate-180 transition-transform shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></summary><div class="p-4 pt-0 border-t border-[#2a2a2f]/50 text-xs text-[#8a8a8f] space-y-3 leading-relaxed font-sans"><p class="text-[#f0f0fa]/95 font-medium border-l border-white/20 pl-3">Aviation radio communications mandate distinct pronunciations to avoid confusion: the number 3 is spoken as 'TREE', 5 is spoken as 'FIFE', and 9 is spoken as 'NINER'. Other digits are spoken individually, such as 'WUN' (1), 'TOO' (2), and 'ZEE-RO' (0).</p><div class="overflow-x-auto mt-3"><table class="w-full border-collapse border border-[#2a2a2f] text-[10px] font-mono text-left"><thead><tr class="bg-[#1a1a1f] text-white"><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">Number</th><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">FAA/ICAO Pronunciation</th><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">Acoustic Purpose</th></tr></thead><tbody><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">0</td><td class="border border-[#2a2a2f] px-3 py-1.5">ZEE-ro</td><td class="border border-[#2a2a2f] px-3 py-1.5">Standard clarity</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">3</td><td class="border border-[#2a2a2f] px-3 py-1.5">TREE</td><td class="border border-[#2a2a2f] px-3 py-1.5">Avoids the 'th' sound lost in heavy static</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">5</td><td class="border border-[#2a2a2f] px-3 py-1.5">FIFE</td><td class="border border-[#2a2a2f] px-3 py-1.5">Prevents confusion with 'nine'</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">9</td><td class="border border-[#2a2a2f] px-3 py-1.5">NINER</td><td class="border border-[#2a2a2f] px-3 py-1.5">Prevents confusion with 'five' or German 'nein'</td></tr></tbody></table></div></div></details><details class="group border border-[#2a2a2f] bg-[#0a0a0a]/80 transition-all duration-300 hover:border-[#3a3a3f]"><summary class="flex items-center justify-between p-4 cursor-pointer list-none select-none focus:outline-none"><h3 class="text-xs font-bold tracking-[1.2px] uppercase text-[#f0f0fa] group-hover:text-white transition-colors pr-4">What are the five levels of ATC readability?</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4 text-[#8a8a8f] group-open:rotate-180 transition-transform shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></summary><div class="p-4 pt-0 border-t border-[#2a2a2f]/50 text-xs text-[#8a8a8f] space-y-3 leading-relaxed font-sans"><p class="text-[#f0f0fa]/95 font-medium border-l border-white/20 pl-3">Readability ratings in aviation range from 1 (unreadable) to 5 (perfectly readable). During radio checks, controllers and pilots use these numbers to verify signal strength and voice quality.</p><div class="overflow-x-auto mt-3"><table class="w-full border-collapse border border-[#2a2a2f] text-[10px] font-mono text-left"><thead><tr class="bg-[#1a1a1f] text-white"><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">Rating</th><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">
1Term</th><th class="border border-[#2a2a2f] px-3 py-1.5 uppercase tracking-[0.5px]">Description</th></tr></thead><tbody><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">1</td><td class="border border-[#2a2a2f] px-3 py-1.5">Unreadable</td><td class="border border-[#2a2a2f] px-3 py-1.5">Completely broken, no words discernible</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">2</td><td class="border border-[#2a2a2f] px-3 py-1.5">Readable now and then</td><td class="border border-[#2a2a2f] px-3 py-1.5">Weak signal, only fragments understood</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">3</td><td class="border border-[#2a2a2f] px-3 py-1.5">Readable with difficulty</td><td class="border border-[#2a2a2f] px-3 py-1.5">Noisy or distorted, requires intense focus</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">4</td><td class="border border-[#2a2a2f] px-3 py-1.5">Readable</td><td class="border border-[#2a2a2f] px-3 py-1.5">Clear communication with minor static</td></tr><tr class="hover:bg-white/5"><td class="border border-[#2a2a2f] px-3 py-1.5">5</td><td class="border border-[#2a2a2f] px-3 py-1.5">Perfectly readable</td><td class="border border-[#2a2a2f] px-3 py-1.5">Extremely clear and loud signal</td></tr></tbody></table></div></div></details><details class="group border border-[#2a2a2f] bg-[#0a0a0a]/80 transition-all duration-300 hover:border-[#3a3a3f]"><summary class="flex items-center justify-between p-4 cursor-pointer list-none select-none focus:outline-none"><h3 class="text-xs font-bold tracking-[1.2px] uppercase text-[#f0f0fa] group-hover:text-white transition-colors pr-4">What is an ATC readback and why is it mandatory?</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4 text-[#8a8a8f] group-open:rotate-180 transition-transform shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></summary><div class="p-4 pt-0 border-t border-[#2a2a2f]/50 text-xs text-[#8a8a8f] space-y-3 leading-relaxed font-sans"><p class="text-[#f0f0fa]/95 font-medium border-l border-white/20 pl-3">An ATC readback is the pilot's verbal repetition of critical controller instructions (such as runways, headings, altitudes, and squawk codes). It is mandatory because it allows the air traffic controller to verify that the pilot heard, understood, and will comply with the instruction correctly.</p><p class="text-[11px] text-[#8a8a8f]">If a pilot mishears an instruction, the controller will correct them using the phrase 'Negative, correction...' followed by the correct instructions.</p></div></details></div><div class="flex items-center space-x-2 text-[9px] font-mono text-[#5a5a5f] uppercase tracking-[0.5px] pt-2 border-t border-[#2a2a2f]/30"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check-big w-3 h-3 text-[#5a5a5f]" aria-hidden="true"><path d="M21.801 10A10 10 0 1 1 17 3.335"></path><path d="m9 11 3 3L22 4"></path></svg><span>Authoritative aviation telemetry data mapped to schema.org/FAQPage</span></div></section><footer class="w-full text-center py-4 text-[9px] text-[#5a5a5f] tracking-[1.5px] uppercase border-t border-[#1a1a1f] mt-8"><p>© <!-- -->2026<!-- --> SpaceX Aerospace Radio Simulator. Engineered by Justine Lopez (@justpres).</p></footer></div></div></main></div><!--$--><!--/$-->
1<script src="/_next/static/chunks/1jq4o6yq14o4c.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n3:I[39756,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"default\"]\n8:I[68027,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0ntcse3913hc-.css\",\"style\"]\n:HL[\"/_next/static/media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n2:T9c5,"])</script>
1<script>self.__next_f.push([1,"{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https://atcsimulation.vercel.app/#website\",\"url\":\"https://atcsimulation.vercel.app\",\"name\":\"ATC Academy AI\",\"description\":\"Learn to communicate with Air Traffic Control using FAA/ICAO phraseology, interactive speech feedback, and gamified progress.\",\"publisher\":{\"@id\":\"https://atcsimulation.vercel.app/#person\"},\"creator\":{\"@id\":\"https://atcsimulation.vercel.app/#person\"}},{\"@type\":\"SoftwareApplication\",\"@id\":\"https://atcsimulation.vercel.app/#software\",\"name\":\"ATC Academy AI\",\"operatingSystem\":\"All Web Browsers\",\"applicationCategory\":\"EducationalApplication\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"USD\"}},{\"@type\":\"FAQPage\",\"@id\":\"https://atcsimulation.vercel.app/#faq\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What is ATC Academy AI?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"ATC Academy AI is an advanced, high-fidelity aviation radio training simulator themed around a SpaceX Flight Test Telemetry console. It utilizes interactive speech recognition to help pilots master Air Traffic Control (ATC) radio phraseology and readback procedures in compliance with FAA/ICAO guidelines.\"}},{\"@type\":\"Question\",\"name\":\"Why is the aviation phonetic alphabet spelled Alfa and Juliett instead of Alpha and Juliet?\",\"acceptedA
1nswer\":{\"@type\":\"Answer\",\"text\":\"The International Civil Aviation Organization (ICAO) spelling uses 'Alfa' and 'Juliett' to avoid spelling and pronunciation errors globally. Using 'f' in Alfa prevents non-English speakers from mispronouncing the 'ph' sound, and the extra 't' in Juliett ensures French speakers pronounce the final 't'.\"}},{\"@type\":\"Question\",\"name\":\"How are numbers pronounced in Air Traffic Control radio communications?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Aviation radio communications mandate distinct pronunciations to avoid confusion: the number 3 is spoken as 'TREE', 5 is spoken as 'FIFE', and 9 is spoken as 'NINER'. Other digits are spoken individually, such as 'WUN' (1), 'TOO' (2), and 'ZEE-RO' (0).\"}}]},{\"@type\":\"Person\",\"@id\":\"https://atcsimulation.vercel.app/#person\",\"name\":\"Justine Lopez\",\"alternateName\":\"justpres\",\"gender\":\"http://schema.org/Male\",\"jobTitle\":\"Lead Systems Engineer \u0026 Creator\",\"url\":\"https://github.com/JustPres\",\"sameAs\":[\"https://github.com/JustPres/atc-simulator.git\",\"https://github.com/JustPres\"],\"knowsAbout\":[\"Aviation\",\"Air Traffic Control\",\"Software Engineering\",\"AI Development\",\"Aerospace Systems\",\"React\",\"Next.js\"]}]}"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0ntcse3913hc-.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/158myu8e_yme3.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"inter_b2991b2-module__9mH_6q__variable jetbrains_mono_d5591ac2-module__D88TVW__variable\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$2\"}}]}],[\"$\",\"body\",null,{\"className\":\"antialiased bg-bg-primary text-text-primary min-h-screen\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],\"$L5\"],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[\"$L6\",{},null,false,null]},null,false,null],\"$L7\",false]],\"m\":\"$undefined\",\"G\":[\"$8\",[\"$L9\"]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"oABC0H2HoD__AsFYJTgqF\"}\n"])</script>
1<script>self.__next_f.push([1,"a:I[47257,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"ClientPageRoot\"]\nb:I[52683,[\"/_next/static/chunks/158myu8e_yme3.js\",\"/_next/static/chunks/2xt0wequmkz6f.js\"],\"default\"]\ne:I[97367,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"OutletBoundary\"]\nf:\"$Sreact.suspense\"\n11:I[97367,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"ViewportBoundary\"]\n13:I[97367,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"MetadataBoundary\"]\n5:[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]\n6:[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$La\",null,{\"Component\":\"$b\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@c\",\"$@d\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/2xt0wequmkz6f.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$f\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@10\"}]}]]}]\n7:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L11\",null,{\"children\":\"$L12\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L13\",null,{\"children\":[\"$\",\"$f\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L14\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n9:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0ntcse3913hc-.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n"])</script>
1<script>self.__next_f.push([1,"c:{}\nd:\"$6:props:children:0:props:serverProvidedParams:params\"\n"])</script>
1<script>self.__next_f.push([1,"12:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"15:I[27201,[\"/_next/static/chunks/158myu8e_yme3.js\"],\"IconMark\"]\n10:null\n"])</script>
1<script>self.__next_f.push([1,"14:[[\"$\",\"title\",\"0\",{\"children\":\"ATC Academy AI â AI-Powered Aviation Radio Trainer | Developed by Justine Lopez (@justpres)\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Master Air Traffic Control communication with FAA/ICAO phraseology, interactive speech feedback, and crew briefings. Developed by Justine Lopez (@justpres).\"}],[\"$\",\"link\",\"2\",{\"rel\":\"author\",\"href\":\"https://github.com/JustPres\"}],[\"$\",\"meta\",\"3\",{\"name\":\"author\",\"content\":\"Justine Lopez\"}],[\"$\",\"meta\",\"4\",{\"name\":\"keywords\",\"content\":\"Justine Lopez,justpres,atc-simulator,ATC Academy AI,Aviation Radio Trainer,Air Traffic Control Simulator,SpaceX Flight Test Radio Suite,FAA phraseology,ICAO phraseology\"}],[\"$\",\"meta\",\"5\",{\"name\":\"creator\",\"content\":\"Justine Lopez (@justpres)\"}],[\"$\",\"meta\",\"6\",{\"name\":\"publisher\",\"content\":\"Justine Lopez (@justpres)\"}],[\"$\",\"meta\",\"7\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"8\",{\"name\":\"geo.region\",\"content\":\"PH-NCR\"}],[\"$\",\"meta\",\"9\",{\"name\":\"geo.placename\",\"content\":\"Manila\"}],[\"$\",\"meta\",\"10\",{\"name\":\"geo.position\",\"content\":\"14.5995;120.9842\"}],[\"$\",\"meta\",\"11\",{\"name\":\"ICBM\",\"content\":\"14.5995, 120.9842\"}],[\"$\",\"link\",\"12\",{\"rel\":\"canonical\",\"href\":\"https://atcsimulation.vercel.app\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:title\",\"content\":\"ATC Academy AI â AI-Powered Aviation Radio Trainer\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:description\",\"content\":\"Master Air Traffic Control communication with FAA/ICAO phraseology, interactive speech feedback, and crew briefings. Developed by Justine Lopez (@justpres).\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:url\",\"content\":\"https://atcsimulation.vercel.app\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:site_name\",\"content\":\"ATC Academy AI\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:image\",\"content\":\"https://atcsimulation.vercel.app/opengraph-image.jpg?opengraph-image.3tagct23p861d.jpg\"}],[\"$\",\"meta\",\"19\",{\"property\":\"og:image:type\",\"content\":\"image/jpeg\"}],[\"$\",\"meta\",\"20\",{\"property\":\"og:image:width\",\"content\":\"1376\"}],[\"$\",\"meta\",\"21\",{\"property\":\"og:image:height\",\"content\":\"768\"}],[\"$\",\"meta\",\"22\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:creator\",\"content\":\"@justpres\"}],[\"$\",\"meta\",\"25\",{\"name\":\"twitter:title\",\"content\":\"ATC Academy AI â Developed by Justine Lopez (@justpres)\"}],[\"$\",\"meta\",\"26\",{\"name\":\"twitter:description\",\"content\":\"Master Air Traffic Control communication with FAA/ICAO phraseology. Created by Justine Lopez (@justpres).\"}],[\"$\",\"meta\",\"27\",{\"name\":\"twitter:image\",\"content\":\"https://atcsimulation.vercel.app/twitter-image.jpg?twitter-image.3tagct23p861d.jpg\"}],[\"$\",\"meta\",\"28\",{\"name\":\"twitter:image:type\",\"content\":\"image/jpeg\"}],[\"$\",\"meta\",\"29\",{\"name\":\"twitter:image:width\",\"content\":\"1376\"}],[\"$\",\"meta\",\"30\",{\"name\":\"twitter:image:height\",\"content\":\"768\"}],[\"$\",\"link\",\"31\",{\"rel\":\"icon\",\"href\":\"/icon.jpg?icon.1nvizb-ckyfem.jpg\",\"sizes\":\"1024x1024\",\"type\":\"image/jpeg\"}],[\"$\",\"$L15\",\"32\",{}]]\n"])</script>
1</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.