[{"data":1,"prerenderedAt":895},["ShallowReactive",2],{"navigation_docs":3,"-reference-architecture":204,"-reference-architecture-surround":890},[4,40,69,82,91,116,129,146,167],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"\u002Fgetting-started","1.getting-started",[10,15,20,25,30,35],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Quick Start","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F3.quick-start","i-lucide-rocket",{"title":26,"path":27,"stem":28,"icon":29},"Project Structure","\u002Fgetting-started\u002Fproject-structure","1.getting-started\u002F4.project-structure","i-lucide-folder-tree",{"title":31,"path":32,"stem":33,"icon":34},"First Deployment","\u002Fgetting-started\u002Ffirst-deployment","1.getting-started\u002F5.first-deployment","i-lucide-upload-cloud",{"title":36,"path":37,"stem":38,"icon":39},"Troubleshooting","\u002Fgetting-started\u002Ftroubleshooting","1.getting-started\u002F6.troubleshooting","i-lucide-wrench",{"title":41,"children":42,"path":67,"stem":68,"page":6},"Platform",[43,47,51,55,59,63],{"title":44,"path":45,"stem":46},"Dashboard","\u002Fplatform\u002Fdashboard","2.platform\u002F1.dashboard",{"title":48,"path":49,"stem":50},"Marketplace","\u002Fplatform\u002Fmarketplace","2.platform\u002F2.marketplace",{"title":52,"path":53,"stem":54},"Monitoring & Metrics","\u002Fplatform\u002Fmonitoring","2.platform\u002F3.monitoring",{"title":56,"path":57,"stem":58},"Projects","\u002Fplatform\u002Fprojects","2.platform\u002F4.projects",{"title":60,"path":61,"stem":62},"Services","\u002Fplatform\u002Fservices","2.platform\u002F5.services",{"title":64,"path":65,"stem":66},"Logs","\u002Fplatform\u002Flogs","2.platform\u002F6.logs","\u002Fplatform","2.platform",{"title":70,"children":71,"path":80,"stem":81,"page":6},"CLI",[72,76],{"title":73,"path":74,"stem":75},"CLI Installation","\u002Fcli\u002Finstallation","3.cli\u002F1.installation",{"title":77,"path":78,"stem":79},"Commands Reference","\u002Fcli\u002Fcommands","3.cli\u002F2.commands","\u002Fcli","3.cli",{"title":83,"children":84,"path":89,"stem":90,"page":6},"TUI",[85],{"title":86,"path":87,"stem":88},"TUI Overview","\u002Ftui\u002Foverview","4.tui\u002F1.overview","\u002Ftui","4.tui",{"title":92,"children":93,"path":114,"stem":115,"page":6},"Docker",[94,98,102,106,110],{"title":95,"path":96,"stem":97},"Docker Containers","\u002Fdocker\u002Fcontainers","5.docker\u002F1.containers",{"title":99,"path":100,"stem":101},"Docker Images","\u002Fdocker\u002Fimages","5.docker\u002F2.images",{"title":103,"path":104,"stem":105},"Docker Compose","\u002Fdocker\u002Fcompose","5.docker\u002F3.compose",{"title":107,"path":108,"stem":109},"Docker Volumes","\u002Fdocker\u002Fvolumes","5.docker\u002F4.volumes",{"title":111,"path":112,"stem":113},"Docker Networks","\u002Fdocker\u002Fnetworks","5.docker\u002F5.networks","\u002Fdocker","5.docker",{"title":117,"children":118,"path":127,"stem":128,"page":6},"PM2",[119,123],{"title":120,"path":121,"stem":122},"Process Management","\u002Fpm2\u002Fprocess-management","6.pm2\u002F1.process-management",{"title":124,"path":125,"stem":126},"Zero-Downtime Deployments","\u002Fpm2\u002Fzero-downtime","6.pm2\u002F2.zero-downtime","\u002Fpm2","6.pm2",{"title":130,"children":131,"path":144,"stem":145,"page":6},"VPS",[132,136,140],{"title":133,"path":134,"stem":135},"VPS Management","\u002Fvps\u002Fssh-management","7.vps\u002F1.ssh-management",{"title":137,"path":138,"stem":139},"SSH Access","\u002Fvps\u002Fssh","7.vps\u002F2.ssh",{"title":141,"path":142,"stem":143},"Firewall","\u002Fvps\u002Ffirewall","7.vps\u002F3.firewall","\u002Fvps","7.vps",{"title":147,"children":148,"path":165,"stem":166,"page":6},"Deployment",[149,153,157,161],{"title":150,"path":151,"stem":152},"Production Setup","\u002Fdeployment\u002Fproduction-setup","8.deployment\u002F1.production-setup",{"title":154,"path":155,"stem":156},"Scaling","\u002Fdeployment\u002Fscaling","8.deployment\u002F2.scaling",{"title":158,"path":159,"stem":160},"GitHub Actions CI\u002FCD","\u002Fdeployment\u002Fgithub-actions","8.deployment\u002F3.github-actions",{"title":162,"path":163,"stem":164},"Security","\u002Fdeployment\u002Fsecurity","8.deployment\u002F4.security","\u002Fdeployment","8.deployment",{"title":168,"children":169,"path":202,"stem":203,"page":6},"Reference",[170,174,178,182,186,190,194,198],{"title":171,"path":172,"stem":173},"Architecture","\u002Freference\u002Farchitecture","9.reference\u002F1.architecture",{"title":175,"path":176,"stem":177},"CLI Reference","\u002Freference\u002Fcli-reference","9.reference\u002F2.cli-reference",{"title":179,"path":180,"stem":181},"Environment Variables","\u002Freference\u002Fenvironment-variables","9.reference\u002F3.environment-variables",{"title":183,"path":184,"stem":185},"API Reference","\u002Freference\u002Fapi-reference","9.reference\u002F4.api-reference",{"title":187,"path":188,"stem":189},"Webhooks","\u002Freference\u002Fwebhooks","9.reference\u002F5.webhooks",{"title":191,"path":192,"stem":193},"Authentication","\u002Freference\u002Fauthentication","9.reference\u002F6.authentication",{"title":195,"path":196,"stem":197},"Configuration","\u002Freference\u002Fconfiguration","9.reference\u002F7.configuration",{"title":199,"path":200,"stem":201},"API Overview","\u002Freference\u002Fapi","9.reference\u002F8.api","\u002Freference","9.reference",{"id":205,"title":171,"body":206,"description":883,"extension":884,"links":885,"meta":886,"navigation":887,"path":172,"seo":888,"stem":173,"__hash__":889},"docs\u002F9.reference\u002F1.architecture.md",{"type":207,"value":208,"toc":838},"minimark",[209,214,218,223,228,231,245,261,271,275,278,286,306,313,317,320,329,346,353,357,360,372,376,386,390,394,400,404,410,414,420,424,428,523,527,533,537,541,596,600,606,610,613,619,623,634,638,652,656,660,674,678,692,696,700,721,725,736,740,744,750,764,770,784,788,799,803,807,813,817,823,826],[210,211,213],"h1",{"id":212},"architecture-overview","Architecture Overview",[215,216,217],"p",{},"SkyPort is a modular, self-hosted infrastructure platform designed with separation of concerns and scalability in mind.",[219,220,222],"h2",{"id":221},"system-components","System Components",[224,225,227],"h3",{"id":226},"_1-cli-command-line-interface","1. CLI (Command-Line Interface)",[215,229,230],{},"The lightweight CLI tool for automation and scripting.",[215,232,233,237,238,241,244],{},[234,235,236],"strong",{},"Technology",": Go",[239,240],"br",{},[234,242,243],{},"Features",":",[246,247,248,252,255,258],"ul",{},[249,250,251],"li",{},"Local and remote server management",[249,253,254],{},"Docker, PM2, and VPS commands",[249,256,257],{},"Marketplace integration",[249,259,260],{},"Authentication and credentials management",[215,262,263,266,267],{},[234,264,265],{},"Location",": ",[268,269,270],"code",{},"cli\u002F",[224,272,274],{"id":273},"_2-backend-server-webui-server","2. Backend Server (WebUI Server)",[215,276,277],{},"The core API server that manages infrastructure.",[215,279,280,237,282,284,244],{},[234,281,236],{},[239,283],{},[234,285,243],{},[246,287,288,291,294,297,300,303],{},[249,289,290],{},"REST API endpoints",[249,292,293],{},"WebSocket for real-time updates",[249,295,296],{},"Docker integration",[249,298,299],{},"PM2 process management",[249,301,302],{},"VPS\u002FSSH access",[249,304,305],{},"Marketplace registry",[215,307,308,266,310],{},[234,309,265],{},[268,311,312],{},"backend\u002F",[224,314,316],{"id":315},"_3-frontend-dashboard","3. Frontend Dashboard",[215,318,319],{},"The web-based user interface.",[215,321,322,324,325,327,244],{},[234,323,236],{},": React + Vite + TailwindCSS",[239,326],{},[234,328,243],{},[246,330,331,334,337,340,343],{},[249,332,333],{},"Real-time metrics dashboard",[249,335,336],{},"Container management UI",[249,338,339],{},"Process management UI",[249,341,342],{},"Terminal access",[249,344,345],{},"Application marketplace",[215,347,348,266,350],{},[234,349,265],{},[268,351,352],{},"frontend\u002F",[224,354,356],{"id":355},"_4-documentation-site","4. Documentation Site",[215,358,359],{},"Professional documentation and guides.",[215,361,362,364,365,367,266,369],{},[234,363,236],{},": Nuxt + Docus",[239,366],{},[234,368,265],{},[268,370,371],{},"docs\u002F",[219,373,375],{"id":374},"architecture-diagram","Architecture Diagram",[377,378,383],"pre",{"className":379,"code":381,"language":382},[380],"language-text","┌─────────────────────────────────────────────────────────────┐\n│                     User Interfaces                         │\n├──────────────────────┬──────────────────┬──────────────────┤\n│   Web Dashboard      │   CLI (skyport)  │   TUI (Terminal) │\n│   (React Frontend)   │   (Go Binary)    │   (Bubble Tea)   │\n└──────────────────────┴──────────────────┴──────────────────┘\n           │                    │                    │\n           └────────────────────┼────────────────────┘\n                                │\n                    ┌───────────▼─────────┐\n                    │   API Server        │\n                    │   (Go Backend)      │\n                    │   :8080\u002Fapi         │\n                    └───────────┬─────────┘\n                                │\n                ┌───────────────┼───────────────┐\n                │               │               │\n        ┌───────▼──────┐ ┌──────▼────┐ ┌──────▼────┐\n        │   Docker     │ │   PM2     │ │   VPS    │\n        │   Engine     │ │ Processes │ │ Services │\n        └──────────────┘ └───────────┘ └──────────┘\n                │               │               │\n        ┌───────▼──────┐ ┌──────▼────┐ ┌──────▼────┐\n        │ Containers   │ │   Apps    │ │   SSH    │\n        │ & Images     │ │ (Node.js) │ │  Access  │\n        └──────────────┘ └───────────┘ └──────────┘\n","text",[268,384,381],{"__ignoreMap":385},"",[219,387,389],{"id":388},"data-flow","Data Flow",[224,391,393],{"id":392},"cli-command-flow","CLI Command Flow",[377,395,398],{"className":396,"code":397,"language":382},[380],"User Command (CLI)\n    ↓\nLocal Config (~\u002F.skyport\u002Fconfig.yaml)\n    ↓\nAuthentication (Token\u002FCredentials)\n    ↓\nAPI Server (:8080\u002Fapi)\n    ↓\nDocker\u002FPM2\u002FVPS Handler\n    ↓\nOperation Execution\n    ↓\nResult → Output (JSON\u002FTable)\n",[268,399,397],{"__ignoreMap":385},[224,401,403],{"id":402},"dashboard-real-time-flow","Dashboard Real-Time Flow",[377,405,408],{"className":406,"code":407,"language":382},[380],"Web Browser\n    ↓\nWebSocket Connection (:8080\u002Fws)\n    ↓\nAPI Server (persistent connection)\n    ↓\nMetrics Collection\n    ↓\nReal-Time Updates (every 2-5 seconds)\n    ↓\nFrontend Dashboard Update\n",[268,409,407],{"__ignoreMap":385},[219,411,413],{"id":412},"directory-structure","Directory Structure",[377,415,418],{"className":416,"code":417,"language":382},[380],"SkyPort\u002F\n├── cli\u002F                    # CLI application\n│   ├── cmd\u002F               # CLI commands\n│   ├── internal\u002F          # CLI internals\n│   │   ├── api\u002F          # API client\n│   │   ├── config\u002F       # Configuration\n│   │   ├── detector\u002F     # Project detection\n│   │   ├── docker\u002F       # Docker integration\n│   │   ├── pm2\u002F          # PM2 integration\n│   │   ├── ssh\u002F          # SSH\u002FVPS support\n│   │   ├── ui\u002F           # UI formatting\n│   │   └── tui\u002F          # Terminal UI\n│   └── main.go           # Entry point\n│\n├── backend\u002F                # Backend server\n│   ├── cmd\u002F               # Server entry point\n│   ├── internal\u002F          # Backend modules\n│   │   ├── api\u002F          # REST API\n│   │   ├── auth\u002F         # Authentication\n│   │   ├── docker\u002F       # Docker API\n│   │   ├── pm2\u002F          # PM2 management\n│   │   ├── vps\u002F          # VPS management\n│   │   ├── database\u002F     # Database layer\n│   │   ├── models\u002F       # Data models\n│   │   ├── websocket\u002F    # WebSocket\n│   │   └── metrics\u002F      # Monitoring\n│   └── main.go           # Entry point\n│\n├── frontend\u002F               # React dashboard\n│   ├── src\u002F\n│   │   ├── components\u002F   # UI components\n│   │   ├── pages\u002F        # Page components\n│   │   ├── features\u002F     # Feature modules\n│   │   ├── services\u002F     # API services\n│   │   └── stores\u002F       # State management\n│   └── vite.config.ts    # Build config\n│\n└── docs\u002F                   # Documentation\n    ├── content\u002F          # Markdown docs\n    ├── components\u002F       # Doc components\n    └── nuxt.config.ts    # Config\n",[268,419,417],{"__ignoreMap":385},[219,421,423],{"id":422},"component-communication","Component Communication",[224,425,427],{"id":426},"protocols","Protocols",[429,430,431,450],"table",{},[432,433,434],"thead",{},[435,436,437,441,444,447],"tr",{},[438,439,440],"th",{},"Component",[438,442,443],{},"Protocol",[438,445,446],{},"Port",[438,448,449],{},"Purpose",[451,452,453,468,481,495,509],"tbody",{},[435,454,455,459,462,465],{},[456,457,458],"td",{},"CLI → API",[456,460,461],{},"REST\u002FHTTP",[456,463,464],{},"8080",[456,466,467],{},"Commands",[435,469,470,473,476,478],{},[456,471,472],{},"Dashboard → API",[456,474,475],{},"REST\u002FHTTP + WS",[456,477,464],{},[456,479,480],{},"UI updates",[435,482,483,486,489,492],{},[456,484,485],{},"API → Docker",[456,487,488],{},"Socket",[456,490,491],{},"\u002Fvar\u002Frun\u002Fdocker.sock",[456,493,494],{},"Container management",[435,496,497,500,503,506],{},[456,498,499],{},"API → PM2",[456,501,502],{},"IPC",[456,504,505],{},"-",[456,507,508],{},"Process management",[435,510,511,514,517,520],{},[456,512,513],{},"CLI\u002FAPI → VPS",[456,515,516],{},"SSH",[456,518,519],{},"22",[456,521,522],{},"Remote access",[224,524,526],{"id":525},"api-endpoints","API Endpoints",[377,528,531],{"className":529,"code":530,"language":382},[380],"GET    \u002Fapi\u002Fstatus              # Server status\nGET    \u002Fapi\u002Fmetrics             # System metrics\nGET    \u002Fapi\u002Fdocker\u002Fps           # List containers\nGET    \u002Fapi\u002Fdocker\u002Fimages       # List images\nPOST   \u002Fapi\u002Fdocker\u002Frun          # Run container\nGET    \u002Fapi\u002Fpm2\u002Flist            # List processes\nPOST   \u002Fapi\u002Fpm2\u002Fstart           # Start process\nGET    \u002Fapi\u002Fvps\u002Fservers         # List VPS servers\nPOST   \u002Fapi\u002Fauth\u002Flogin          # Authenticate\nWS     \u002Fws                      # WebSocket (real-time)\n",[268,532,530],{"__ignoreMap":385},[219,534,536],{"id":535},"configuration-management","Configuration Management",[224,538,540],{"id":539},"file-locations","File Locations",[429,542,543,555],{},[432,544,545],{},[435,546,547,549,552],{},[438,548,440],{},[438,550,551],{},"Config Location",[438,553,554],{},"Format",[451,556,557,567,576,586],{},[435,558,559,561,564],{},[456,560,70],{},[456,562,563],{},"~\u002F.skyport\u002Fconfig.yaml",[456,565,566],{},"YAML",[435,568,569,572,574],{},[456,570,571],{},"Server",[456,573,563],{},[456,575,566],{},[435,577,578,580,583],{},[456,579,92],{},[456,581,582],{},"\u002Fetc\u002Fdocker\u002Fdaemon.json",[456,584,585],{},"JSON",[435,587,588,590,593],{},[456,589,117],{},[456,591,592],{},"ecosystem.config.js",[456,594,595],{},"JavaScript",[224,597,599],{"id":598},"configuration-hierarchy","Configuration Hierarchy",[377,601,604],{"className":602,"code":603,"language":382},[380],"1. Environment Variables (highest priority)\n   ↓\n2. Command-line Flags\n   ↓\n3. Configuration Files\n   ↓\n4. Built-in Defaults (lowest priority)\n",[268,605,603],{"__ignoreMap":385},[219,607,609],{"id":608},"security-architecture","Security Architecture",[224,611,191],{"id":612},"authentication",[377,614,617],{"className":615,"code":616,"language":382},[380],"User Credentials\n    ↓\nLogin Request\n    ↓\nToken Generation (JWT)\n    ↓\nToken Storage (secure, encrypted)\n    ↓\nToken Validation on Requests\n    ↓\nAccess Granted\u002FDenied\n",[268,618,616],{"__ignoreMap":385},[224,620,622],{"id":621},"authorization","Authorization",[246,624,625,628,631],{},[249,626,627],{},"Role-based access control (RBAC)",[249,629,630],{},"Server-level permissions",[249,632,633],{},"Resource-level access control",[224,635,637],{"id":636},"data-protection","Data Protection",[246,639,640,643,646,649],{},[249,641,642],{},"Credentials stored in local keyring",[249,644,645],{},"API tokens cached locally",[249,647,648],{},"SSH keys managed securely",[249,650,651],{},"HTTPS\u002FTLS for all remote communication",[219,653,655],{"id":654},"scalability-design","Scalability Design",[224,657,659],{"id":658},"horizontal-scaling","Horizontal Scaling",[246,661,662,665,668,671],{},[249,663,664],{},"Stateless API servers",[249,666,667],{},"Shared configuration storage",[249,669,670],{},"Load balancing support",[249,672,673],{},"Multi-server orchestration",[224,675,677],{"id":676},"vertical-scaling","Vertical Scaling",[246,679,680,683,686,689],{},[249,681,682],{},"Memory-efficient Go binaries",[249,684,685],{},"Optimized Docker socket access",[249,687,688],{},"Efficient WebSocket connections",[249,690,691],{},"Resource limit configuration",[219,693,695],{"id":694},"extension-points","Extension Points",[224,697,699],{"id":698},"adding-new-services","Adding New Services",[701,702,703,709,712,718],"ol",{},[249,704,705,706],{},"Create handler in ",[268,707,708],{},"backend\u002Finternal\u002F",[249,710,711],{},"Define API endpoints",[249,713,714,715],{},"Add CLI commands in ",[268,716,717],{},"cli\u002Fcmd\u002F",[249,719,720],{},"Update documentation",[224,722,724],{"id":723},"custom-integrations","Custom Integrations",[246,726,727,730,733],{},[249,728,729],{},"REST API for third-party tools",[249,731,732],{},"WebSocket for real-time data",[249,734,735],{},"CLI hooks for automation",[219,737,739],{"id":738},"dependencies","Dependencies",[224,741,743],{"id":742},"core-dependencies","Core Dependencies",[215,745,746,749],{},[234,747,748],{},"Go"," (1.20+):",[246,751,752,755,758,761],{},[249,753,754],{},"Docker SDK",[249,756,757],{},"SSH client (golang.org\u002Fx\u002Fcrypto)",[249,759,760],{},"Charm Bubble Tea (TUI)",[249,762,763],{},"Lip Gloss (formatting)",[215,765,766,769],{},[234,767,768],{},"Frontend"," (Node.js 18+):",[246,771,772,775,778,781],{},[249,773,774],{},"React 18",[249,776,777],{},"TypeScript",[249,779,780],{},"Vite",[249,782,783],{},"TailwindCSS",[224,785,787],{"id":786},"external-services","External Services",[246,789,790,793,796],{},[249,791,792],{},"Docker daemon (via socket)",[249,794,795],{},"PM2 (via API)",[249,797,798],{},"SSH servers (for VPS)",[219,800,802],{"id":801},"deployment-topology","Deployment Topology",[224,804,806],{"id":805},"single-server","Single Server",[377,808,811],{"className":809,"code":810,"language":382},[380],"┌─────────────────────┐\n│   VPS \u002F Server      │\n│ ┌─────────────────┐ │\n│ │  SkyPort        │ │\n│ │  ├─ CLI         │ │\n│ │  ├─ API Server  │ │\n│ │  └─ Dashboard   │ │\n│ └─────────────────┘ │\n│ ┌─────────────────┐ │\n│ │  Docker         │ │\n│ │  PM2            │ │\n│ │  Services       │ │\n│ └─────────────────┘ │\n└─────────────────────┘\n",[268,812,810],{"__ignoreMap":385},[224,814,816],{"id":815},"high-availability","High Availability",[377,818,821],{"className":819,"code":820,"language":382},[380],"┌──────────────────────────────────────────┐\n│         Load Balancer                    │\n│    (HAProxy \u002F Nginx \u002F F5)                │\n└──┬───────────────────────────────┬───────┘\n   │                               │\n┌──▼──────────────┐        ┌──────▼────────┐\n│  SkyPort #1     │        │  SkyPort #2   │\n│  Port 8080      │        │  Port 8080    │\n│  + Docker       │        │  + Docker     │\n│  + PM2          │        │  + PM2        │\n└─────────────────┘        └───────────────┘\n   │                               │\n   └──────────────┬────────────────┘\n                  │\n        ┌─────────▼────────┐\n        │  Shared Storage  │\n        │  (NFS\u002FS3\u002Fetc)    │\n        └──────────────────┘\n",[268,822,820],{"__ignoreMap":385},[824,825],"hr",{},[215,827,828,266,831,834,835],{},[234,829,830],{},"Related",[832,833,175],"a",{"href":176}," | ",[832,836,837],{"href":200},"API Documentation",{"title":385,"searchDepth":839,"depth":839,"links":840},2,[841,848,849,853,854,858,862,867,871,875,879],{"id":221,"depth":839,"text":222,"children":842},[843,845,846,847],{"id":226,"depth":844,"text":227},3,{"id":273,"depth":844,"text":274},{"id":315,"depth":844,"text":316},{"id":355,"depth":844,"text":356},{"id":374,"depth":839,"text":375},{"id":388,"depth":839,"text":389,"children":850},[851,852],{"id":392,"depth":844,"text":393},{"id":402,"depth":844,"text":403},{"id":412,"depth":839,"text":413},{"id":422,"depth":839,"text":423,"children":855},[856,857],{"id":426,"depth":844,"text":427},{"id":525,"depth":844,"text":526},{"id":535,"depth":839,"text":536,"children":859},[860,861],{"id":539,"depth":844,"text":540},{"id":598,"depth":844,"text":599},{"id":608,"depth":839,"text":609,"children":863},[864,865,866],{"id":612,"depth":844,"text":191},{"id":621,"depth":844,"text":622},{"id":636,"depth":844,"text":637},{"id":654,"depth":839,"text":655,"children":868},[869,870],{"id":658,"depth":844,"text":659},{"id":676,"depth":844,"text":677},{"id":694,"depth":839,"text":695,"children":872},[873,874],{"id":698,"depth":844,"text":699},{"id":723,"depth":844,"text":724},{"id":738,"depth":839,"text":739,"children":876},[877,878],{"id":742,"depth":844,"text":743},{"id":786,"depth":844,"text":787},{"id":801,"depth":839,"text":802,"children":880},[881,882],{"id":805,"depth":844,"text":806},{"id":815,"depth":844,"text":816},"SkyPort architecture and design overview","md",null,{},true,{"title":171,"description":883},"S255u64Gv03PECUfxiESSKJvD1vonUb6HZXRHyPmLS0",[891,893],{"title":162,"path":163,"stem":164,"description":892,"children":-1},"Security best practices for SkyPort deployments",{"title":175,"path":176,"stem":177,"description":894,"children":-1},"Complete SkyPort CLI command reference",1778858462359]