[{"data":1,"prerenderedAt":232},["ShallowReactive",2],{"navigation_docs":3,"landing":91},[4],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":90},"Quayel Gateway","i-lucide-network","\u002Fquayel-gateway","quayel-gateway",[10,29,68],{"title":11,"icon":12,"path":13,"stem":14,"children":15,"page":-1},"Getting Started","i-lucide-rocket","\u002Fquayel-gateway\u002Fgetting-started","quayel-gateway\u002F01.getting-started\u002Findex",[16,19,24],{"title":17,"path":13,"stem":14,"icon":18},"Introduction","i-lucide-book-open",{"title":20,"path":21,"stem":22,"icon":23},"Installation","\u002Fquayel-gateway\u002Fgetting-started\u002Finstallation","quayel-gateway\u002F01.getting-started\u002F1.installation","i-lucide-container",{"title":25,"path":26,"stem":27,"icon":28},"Project Structure","\u002Fquayel-gateway\u002Fgetting-started\u002Fproject-structure","quayel-gateway\u002F01.getting-started\u002F2.project-structure","i-lucide-folder-tree",{"title":30,"icon":31,"path":32,"stem":33,"children":34,"page":-1},"Plugins","i-lucide-puzzle","\u002Fquayel-gateway\u002Fplugins","quayel-gateway\u002F02.plugins\u002Findex",[35,38,43,48,53,58,63],{"title":36,"path":32,"stem":33,"icon":37},"Overview","i-lucide-workflow",{"title":39,"path":40,"stem":41,"icon":42},"IP Intelligence","\u002Fquayel-gateway\u002Fplugins\u002Fip-intel","quayel-gateway\u002F02.plugins\u002F1.ip-intel","i-lucide-radar",{"title":44,"path":45,"stem":46,"icon":47},"Firewall","\u002Fquayel-gateway\u002Fplugins\u002Ffirewall","quayel-gateway\u002F02.plugins\u002F2.firewall","i-lucide-shield",{"title":49,"path":50,"stem":51,"icon":52},"Rate Limiting","\u002Fquayel-gateway\u002Fplugins\u002Frate-limiting","quayel-gateway\u002F02.plugins\u002F3.rate-limiting","i-lucide-gauge",{"title":54,"path":55,"stem":56,"icon":57},"Cache","\u002Fquayel-gateway\u002Fplugins\u002Fcache","quayel-gateway\u002F02.plugins\u002F4.cache","i-lucide-database",{"title":59,"path":60,"stem":61,"icon":62},"Load Balancer","\u002Fquayel-gateway\u002Fplugins\u002Fload-balancer","quayel-gateway\u002F02.plugins\u002F5.load-balancer","i-lucide-scale",{"title":64,"path":65,"stem":66,"icon":67},"Auto-SSL","\u002Fquayel-gateway\u002Fplugins\u002Fauto-ssl","quayel-gateway\u002F02.plugins\u002F6.auto-ssl","i-lucide-lock",{"title":69,"icon":70,"path":71,"stem":72,"children":73,"page":-1},"AI","i-lucide-bot","\u002Fquayel-gateway\u002Fai","quayel-gateway\u002F03.ai\u002Findex",[74,75,80,85],{"title":36,"path":71,"stem":72,"icon":70},{"title":76,"path":77,"stem":78,"icon":79},"The Quayel Gateway Skill","\u002Fquayel-gateway\u002Fai\u002Fskill","quayel-gateway\u002F03.ai\u002F1.skill","i-lucide-wand-sparkles",{"title":81,"path":82,"stem":83,"icon":84},"Installing the Skill","\u002Fquayel-gateway\u002Fai\u002Finstallation","quayel-gateway\u002F03.ai\u002F2.installation","i-lucide-download",{"title":86,"path":87,"stem":88,"icon":89},"AI Agent Guide","\u002Fquayel-gateway\u002Fai\u002Fagent-guide","quayel-gateway\u002F03.ai\u002F3.agent-guide","i-lucide-braces",false,{"id":92,"title":93,"body":94,"description":101,"extension":225,"meta":226,"navigation":227,"path":228,"seo":229,"stem":230,"__hash__":231},"landing\u002Findex.md","Quayel",{"type":95,"value":96,"toc":221},"minimark",[97,217],[98,99,102,114,154,186,191,209],"u-page-hero",{":links":100,"description":101,"title":93},"[{\"label\":\"Get Started\",\"to\":\"\u002Fquayel-gateway\u002Fgetting-started\",\"icon\":\"i-lucide-rocket\",\"size\":\"xl\"},{\"label\":\"GitHub\",\"to\":\"https:\u002F\u002Fgithub.com\u002Fquayel\u002FQuayel-Gateway\",\"icon\":\"i-simple-icons-github\",\"size\":\"xl\",\"variant\":\"outline\",\"target\":\"_blank\"}]","High-performance API gateway with embedded IP intelligence — firewall, rate limiting, caching, load balancing, and automatic TLS in a single Rust binary.",[103,104,105,106,113],"p",{},"Built on ",[107,108,112],"a",{"href":109,"rel":110},"https:\u002F\u002Fgithub.com\u002Fcloudflare\u002Fpingora",[111],"nofollow","Pingora"," — the Rust framework behind Cloudflare's edge — Quayel Gateway runs anywhere Linux runs. One JSON config file, one binary, zero external dependencies.",[115,116,121],"pre",{"className":117,"code":118,"language":119,"meta":120,"style":120},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","docker run --rm -p 8080:8080 -p 8443:8443 quayel\u002Fquayel-gateway\n","bash","",[122,123,124],"code",{"__ignoreMap":120},[125,126,129,133,137,140,143,146,148,151],"span",{"class":127,"line":128},"line",1,[125,130,132],{"class":131},"sBMFI","docker",[125,134,136],{"class":135},"sfazB"," run",[125,138,139],{"class":135}," --rm",[125,141,142],{"class":135}," -p",[125,144,145],{"class":135}," 8080:8080",[125,147,142],{"class":135},[125,149,150],{"class":135}," 8443:8443",[125,152,153],{"class":135}," quayel\u002Fquayel-gateway\n",[155,156,157,163,168,172,176,181],"card-group",{},[158,159,162],"card",{"icon":160,"title":161},"i-lucide-package-check","Zero external dependencies","~140 MB of IP-intelligence data (MMDB + CIDR lists) compiled into the binary. No Redis, no databases, no downloads on startup.",[158,164,167],{"icon":165,"title":166},"i-lucide-binary","Single binary deployment","Copy one file, write one JSON config, start serving. ~29 MB runtime RSS.",[158,169,171],{"icon":42,"title":170},"Embedded IP intelligence","Country, ASN, VPN\u002FTor\u002Fdatacenter\u002Fproxy detection, risk scoring, and network classification — in ~5μs, cached.",[158,173,175],{"icon":67,"title":174},"On-demand TLS","Automatic Let's Encrypt certificates (ACME) obtained on first request, with in-memory O(1) lookups and auto-renewal.",[158,177,180],{"icon":178,"title":179},"i-lucide-list-ordered","Deterministic plugin pipeline","IP Intel → Firewall → Rate Limit → Load Balancer → Cache → Logging. Any plugin can short-circuit the pipeline.",[158,182,185],{"icon":183,"title":184},"i-lucide-scroll-text","Structured JSONL logging","One JSON line per request: IP intel, firewall decisions, rate-limit state, cache status, LB target, and per-phase timing.",[187,188,190],"h2",{"id":189},"explore-the-documentation","Explore the documentation",[155,192,193,196,199,202],{},[158,194,195],{"icon":12,"title":11,"to":13},"What Quayel Gateway is, how to install it with Docker, and how the project is organized.",[158,197,198],{"icon":31,"title":30,"to":32},"IP intelligence, firewall, rate limiting, cache, load balancing, and auto-SSL — one page per plugin.",[158,200,201],{"icon":70,"title":69,"to":71},"The Quayel Gateway skill for AI agents, how to install it, and the full agent guide.",[158,203,208],{"icon":204,"title":205,"to":206,"target":207},"i-simple-icons-github","GitHub","https:\u002F\u002Fgithub.com\u002Fquayel\u002FQuayel-Gateway","_blank","Source code, issue tracker, and releases for Quayel Gateway.",[210,211,212,213,216],"note",{},"The general Quayel platform documentation is being written and will land here. The ",[214,215,5],"strong",{}," documentation is complete and available now.",[218,219,220],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":120,"searchDepth":222,"depth":222,"links":223},2,[224],{"id":189,"depth":222,"text":190},"md",{},true,"\u002F",{"title":93,"description":101},"index","9ma8ua9YjunoxGE24yaOufz2tgPlGkQSVUImAK_RRJw",1791649765233]