[{"data":1,"prerenderedAt":68},["ShallowReactive",2],{"features":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":5,"title":7,"description":8,"hero":9,"concurrency":12,"performance":29,"dx":46,"_id":62,"_type":63,"_source":64,"_file":65,"_stem":66,"_extension":67},"\u002Ffeatures","",false,"Features - Hummingbird","What makes Hummingbird the right choice for Swift at scale.",{"title":10,"description":11},"Built for Swift at Scale","These aren't marketing checklist items. They're what makes Hummingbird correct under real production pressure - and invisible to your users, exactly as they should be.\n",{"headline":13,"title":14,"description":15,"items":16},"Structured Concurrency","Your server behaves correctly, automatically","Hummingbird embraces Swift's structured concurrency from the ground up — not retrofitted on top of callbacks or promises. Every request runs in a structured task tree, so cancellation and resource cleanup all happen correctly by design.\n",[17,21,25],{"title":18,"description":19,"icon":20},"Local Reasoning","Bring clarity to your concurrent programming by using the structure of your code to define the lifetimes of tasks and associated resources.\n","i-heroicons-rectangle-group",{"title":22,"description":23,"icon":24},"Task Cancellation","If a client drops the connection (e.g. cancels a URLSession), Hummingbird detects it and cancels in-flight work automatically. No wasted CPU on abandoned Excel exports or slow database queries.\n","i-heroicons-x-circle",{"title":26,"description":27,"icon":28},"Graceful Shutdown","On restart or maintenance, Hummingbird finishes all in-progress requests before going offline. No dropped connections, no API errors for your users.\n","i-heroicons-arrow-path",{"headline":30,"title":31,"description":32,"items":33},"Performance","Low memory, lower running costs","Hummingbird's tiny footprint means you run more on the same hardware, or spend less in the cloud. Backpressure and ARC keep memory stable and latency predictable.\n",[34,38,42],{"title":35,"description":36,"icon":37},"Extremely Low Memory Usage","Hummingbird's memory footprint is tiny by design. More requests per dollar, fewer surprises under load.\n","i-heroicons-server-stack",{"title":39,"description":40,"icon":41},"Backpressure","If a client sends 2 GB of data faster than you can process it, Hummingbird throttles the socket automatically. Memory stays flat; your server stays stable.\n","i-heroicons-shield-check",{"title":43,"description":44,"icon":45},"Predictable Performance","No garbage collector pauses. Swift's ARC gives consistent, low-latency responses under load.\n","i-heroicons-rocket-launch",{"headline":47,"title":48,"description":49,"items":50},"Developer Experience","Type-safe, ergonomic, correct","Hummingbird replaces runtime guesswork with compile-time guarantees, and comes with a rich ecosystem of ready-to-run templates.\n",[51,55,58],{"title":52,"description":53,"icon":54},"RequestContext","Replace untyped request storage (request[\"user\"] as? User) with a struct you define. context.user is a User, non-optional, known at compile time. Unlocks powerful middleware design patterns.\n","i-heroicons-light-bulb",{"title":56,"description":57,"icon":20},"Rich Ecosystem","Templates and example projects for HTTP\u002F2, WebSockets, authentication, and more - ready to clone and run.\n",{"title":59,"description":60,"icon":61},"Ergonomic Swift","Swift's expressive syntax makes route handlers, middleware, and response types clean and readable.\n","i-heroicons-pencil-square","content:features.yml","yaml","content","features.yml","features","yml",1778882520412]