[{"data":1,"prerenderedAt":685},["ShallowReactive",2],{"content-query-vjxGtCK2Uf":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":7,"summary":9,"order":10,"body":11,"_type":679,"_id":680,"_source":681,"_file":682,"_stem":683,"_extension":684},"\u002Fguides\u002Fhospital-throughput-on-fastyoke","guides",false,"","Hospital throughput on FastYoke — FastYoke","How a clinic or hospital unit runs patient flow, transport, discharge, and EVS turnover on FastYoke — without sending PHI to a third-party SaaS.",4,{"type":12,"children":13,"toc":663},"root",[14,22,640],{"type":15,"tag":16,"props":17,"children":21},"element","hero",{"eyebrow":18,"tagline":19,"title":20},"Vertical playbook","What a real bed-placement, patient-transport, discharge-planning, and EVS-turnover stack looks like — running on a per-tenant database with PHI encrypted at rest.","Hospital throughput on FastYoke",[],{"type":15,"tag":23,"props":24,"children":27},"marketing-section",{"band":25,"max-width":26},"white","3xl",[28,36,50,63,69,95,112,117,123,153,160,173,228,239,245,283,289,327,333,362,368,373,460,466,471,515,527,533,538,588,593,599],{"type":15,"tag":29,"props":30,"children":32},"h2",{"id":31},"who-this-is-for",[33],{"type":34,"value":35},"text","Who this is for",{"type":15,"tag":37,"props":38,"children":39},"p",{},[40,42,48],{"type":34,"value":41},"You operate a clinic, a hospital unit, or an\nambulatory-surgery center. You have an EHR for the chart\nof record. What you don't have is good software for the\n",{"type":15,"tag":43,"props":44,"children":45},"strong",{},[46],{"type":34,"value":47},"operational layer around the chart",{"type":34,"value":49},": which bed a\npatient is waiting on, who's transporting them, whether\nEVS has turned the room, who's on the discharge worklist\nthis hour. That layer currently lives in a whiteboard, a\nshared spreadsheet, a Teams thread, or — most commonly —\nall three at once.",{"type":15,"tag":37,"props":51,"children":52},{},[53,55,61],{"type":34,"value":54},"This guide is for the operations director, charge nurse,\nor unit administrator who's done a half-built internal\ntool and is wondering whether there's a sensible platform\nfor the operational layer that ",{"type":15,"tag":56,"props":57,"children":58},"em",{},[59],{"type":34,"value":60},"isn't",{"type":34,"value":62}," a certified EHR.",{"type":15,"tag":29,"props":64,"children":66},{"id":65},"what-fastyoke-is-and-isnt-for-healthcare",[67],{"type":34,"value":68},"What FastYoke is — and isn't — for healthcare",{"type":15,"tag":37,"props":70,"children":71},{},[72,77,79,86,88,93],{"type":15,"tag":43,"props":73,"children":74},{},[75],{"type":34,"value":76},"FastYoke is operational scaffolding around the chart.",{"type":34,"value":78},"\nThe ",{"type":15,"tag":80,"props":81,"children":83},"a",{"href":82},"\u002Fdocs\u002Fmarketplace",[84],{"type":34,"value":85},"Patient Flow\nYoke",{"type":34,"value":87}," ships four FSM boards out of the\nbox — bed placement, patient transport, discharge\nplanning, and bed turnover — running on a per-tenant\nSQLite database with an append-only event log. The\n",{"type":15,"tag":80,"props":89,"children":90},{"href":82},[91],{"type":34,"value":92},"EHR\u002FADT connector",{"type":34,"value":94}," ingests HL7v2\nadmit \u002F transfer \u002F discharge messages from your interface\nengine so the boards stay current without a clinical\nintegration project.",{"type":15,"tag":37,"props":96,"children":97},{},[98,103,105,110],{"type":15,"tag":43,"props":99,"children":100},{},[101],{"type":34,"value":102},"FastYoke is not a certified EHR.",{"type":34,"value":104}," It doesn't bill,\ndoesn't write to the chart, and doesn't claim CEHRT or\nMeaningful Use status. The connector is read-only by\nconstruction. If you need a chart of record, FastYoke runs\n",{"type":15,"tag":56,"props":106,"children":107},{},[108],{"type":34,"value":109},"around",{"type":34,"value":111}," yours, not in place of it.",{"type":15,"tag":37,"props":113,"children":114},{},[115],{"type":34,"value":116},"This distinction matters because it shapes the procurement\nconversation. Your CMIO doesn't need to evaluate FastYoke\nagainst Epic. Your COO does — against the spreadsheet and\nthe whiteboard.",{"type":15,"tag":29,"props":118,"children":120},{"id":119},"the-four-boards",[121],{"type":34,"value":122},"The four boards",{"type":15,"tag":37,"props":124,"children":125},{},[126,128,135,137,143,145,151],{"type":34,"value":127},"Each is its own FSM, running against the same shared\nspine of ",{"type":15,"tag":129,"props":130,"children":132},"code",{"className":131},[],[133],{"type":34,"value":134},"Unit",{"type":34,"value":136},", ",{"type":15,"tag":129,"props":138,"children":140},{"className":139},[],[141],{"type":34,"value":142},"Bed",{"type":34,"value":144},", and ",{"type":15,"tag":129,"props":146,"children":148},{"className":147},[],[149],{"type":34,"value":150},"Encounter",{"type":34,"value":152}," entities. ADT\nmessages keep the spine current; the boards model the\nwork happening on top.",{"type":15,"tag":154,"props":155,"children":157},"h3",{"id":156},"_1-bed-placement",[158],{"type":34,"value":159},"1. Bed placement",{"type":15,"tag":37,"props":161,"children":162},{},[163,165,171],{"type":34,"value":164},"The flagship board. Every requested admit becomes a\n",{"type":15,"tag":129,"props":166,"children":168},{"className":167},[],[169],{"type":34,"value":170},"BedRequest",{"type":34,"value":172}," entity moving through:",{"type":15,"tag":174,"props":175,"children":176},"ul",{},[177,188,198,208,218],{"type":15,"tag":178,"props":179,"children":180},"li",{},[181,186],{"type":15,"tag":43,"props":182,"children":183},{},[184],{"type":34,"value":185},"Requested",{"type":34,"value":187}," → request submitted by ED or unit",{"type":15,"tag":178,"props":189,"children":190},{},[191,196],{"type":15,"tag":43,"props":192,"children":193},{},[194],{"type":34,"value":195},"Assigned",{"type":34,"value":197}," → bed selected, hold placed",{"type":15,"tag":178,"props":199,"children":200},{},[201,206],{"type":15,"tag":43,"props":202,"children":203},{},[204],{"type":34,"value":205},"Occupied",{"type":34,"value":207}," → patient in bed",{"type":15,"tag":178,"props":209,"children":210},{},[211,216],{"type":15,"tag":43,"props":212,"children":213},{},[214],{"type":34,"value":215},"PendingDischarge",{"type":34,"value":217}," → MD signed discharge order",{"type":15,"tag":178,"props":219,"children":220},{},[221,226],{"type":15,"tag":43,"props":222,"children":223},{},[224],{"type":34,"value":225},"Vacated",{"type":34,"value":227}," → patient discharged, bed pending EVS",{"type":15,"tag":37,"props":229,"children":230},{},[231,233,237],{"type":34,"value":232},"Bed-availability constraints are guard conditions on the\n",{"type":15,"tag":56,"props":234,"children":235},{},[236],{"type":34,"value":195},{"type":34,"value":238}," transition. Two operators trying to assign the\nsame bed get a guard rejection, not a race condition.",{"type":15,"tag":154,"props":240,"children":242},{"id":241},"_2-patient-transport",[243],{"type":34,"value":244},"2. Patient transport",{"type":15,"tag":37,"props":246,"children":247},{},[248,254,256,261,263,268,270,275,276,281],{"type":15,"tag":129,"props":249,"children":251},{"className":250},[],[252],{"type":34,"value":253},"TransportRequest",{"type":34,"value":255}," entities move from ",{"type":15,"tag":43,"props":257,"children":258},{},[259],{"type":34,"value":260},"Pending",{"type":34,"value":262}," →\n",{"type":15,"tag":43,"props":264,"children":265},{},[266],{"type":34,"value":267},"Dispatched",{"type":34,"value":269}," → ",{"type":15,"tag":43,"props":271,"children":272},{},[273],{"type":34,"value":274},"InProgress",{"type":34,"value":269},{"type":15,"tag":43,"props":277,"children":278},{},[279],{"type":34,"value":280},"Completed",{"type":34,"value":282},". Mirrors\nthe rideshare-style shape — a dispatcher sees the queue,\ntransporters claim jobs, and the audit trail records who\nmoved whom, when, between which rooms.",{"type":15,"tag":154,"props":284,"children":286},{"id":285},"_3-discharge-planning",[287],{"type":34,"value":288},"3. Discharge planning",{"type":15,"tag":37,"props":290,"children":291},{},[292,298,300,305,307,312,314,318,320,325],{"type":15,"tag":129,"props":293,"children":295},{"className":294},[],[296],{"type":34,"value":297},"DischargePlan",{"type":34,"value":299}," entities tracked from ",{"type":15,"tag":43,"props":301,"children":302},{},[303],{"type":34,"value":304},"Initiated",{"type":34,"value":306},"\nthrough ",{"type":15,"tag":43,"props":308,"children":309},{},[310],{"type":34,"value":311},"Coordinated",{"type":34,"value":313}," (case management aligned),\n",{"type":15,"tag":43,"props":315,"children":316},{},[317],{"type":34,"value":260},{"type":34,"value":319}," (waiting on transport \u002F family pickup), and\n",{"type":15,"tag":43,"props":321,"children":322},{},[323],{"type":34,"value":324},"Discharged",{"type":34,"value":326},". The board surfaces patients who've been\nmedically ready for >24 hours so case management can\nescalate. Length-of-stay impact gets measurable.",{"type":15,"tag":154,"props":328,"children":330},{"id":329},"_4-bed-turnover-evs",[331],{"type":34,"value":332},"4. Bed turnover (EVS)",{"type":15,"tag":37,"props":334,"children":335},{},[336,342,344,349,350,354,355,360],{"type":15,"tag":129,"props":337,"children":339},{"className":338},[],[340],{"type":34,"value":341},"CleaningTask",{"type":34,"value":343}," entities for environmental services.\n",{"type":15,"tag":43,"props":345,"children":346},{},[347],{"type":34,"value":348},"Dirty",{"type":34,"value":269},{"type":15,"tag":43,"props":351,"children":352},{},[353],{"type":34,"value":274},{"type":34,"value":269},{"type":15,"tag":43,"props":356,"children":357},{},[358],{"type":34,"value":359},"Clean",{"type":34,"value":361}," → ready for the\nnext assignment. EVS sees the queue prioritized by bed\ndemand; the audit trail tells you average turnover time\nper unit so you can staff appropriately.",{"type":15,"tag":29,"props":363,"children":365},{"id":364},"how-the-data-actually-lives",[366],{"type":34,"value":367},"How the data actually lives",{"type":15,"tag":37,"props":369,"children":370},{},[371],{"type":34,"value":372},"This is the part that matters for procurement reviews:",{"type":15,"tag":174,"props":374,"children":375},{},[376,394,404,430,440,450],{"type":15,"tag":178,"props":377,"children":378},{},[379,384,386,392],{"type":15,"tag":43,"props":380,"children":381},{},[382],{"type":34,"value":383},"Per-tenant database file.",{"type":34,"value":385}," Your tenant has its own\nSQLite file on the Fly.io volume. There is no\n",{"type":15,"tag":129,"props":387,"children":389},{"className":388},[],[390],{"type":34,"value":391},"WHERE tenant_id = ?",{"type":34,"value":393}," clause that the database falls\nback on for isolation — cross-tenant access would\nrequire opening the wrong file, which the application\nnever does.",{"type":15,"tag":178,"props":395,"children":396},{},[397,402],{"type":15,"tag":43,"props":398,"children":399},{},[400],{"type":34,"value":401},"Per-tenant AES-256-GCM encryption (PII add-on).",{"type":34,"value":403},"\nTagged PHI \u002F SPI fields encrypted under per-tenant data\nkeys wrapped by a platform key. Tagged values are\nopaque to filter \u002F sort \u002F search — they're decrypted\nonly on authorized read.",{"type":15,"tag":178,"props":405,"children":406},{},[407,412,414,420,422,428],{"type":15,"tag":43,"props":408,"children":409},{},[410],{"type":34,"value":411},"Append-only event ledger.",{"type":34,"value":413}," Every state change (bed\nassigned, encounter discharged, ADT message received)\nis an immutable row. No ",{"type":15,"tag":129,"props":415,"children":417},{"className":416},[],[418],{"type":34,"value":419},"UPDATE",{"type":34,"value":421}," or ",{"type":15,"tag":129,"props":423,"children":425},{"className":424},[],[426],{"type":34,"value":427},"DELETE",{"type":34,"value":429}," is ever\nissued against the ledger.",{"type":15,"tag":178,"props":431,"children":432},{},[433,438],{"type":15,"tag":43,"props":434,"children":435},{},[436],{"type":34,"value":437},"PHI-bearing connector ledger.",{"type":34,"value":439}," The EHR \u002F ADT\nconnector keeps raw HL7v2 messages in an append-only,\nencrypted-at-rest ledger so an audit can replay exactly\nwhat arrived from the interface engine, when, with what\nACK.",{"type":15,"tag":178,"props":441,"children":442},{},[443,448],{"type":15,"tag":43,"props":444,"children":445},{},[446],{"type":34,"value":447},"On-VM biometrics, optionally.",{"type":34,"value":449}," Face recognition runs\ninside your tenant, not a third-party face-API.\nUseful for staff sign-in and patient match-back when\nyou don't want images leaving the box.",{"type":15,"tag":178,"props":451,"children":452},{},[453,458],{"type":15,"tag":43,"props":454,"children":455},{},[456],{"type":34,"value":457},"HIPAA add-on + executed BAA.",{"type":34,"value":459}," Available on\nEnterprise \u002F ISV tier as part of the HIPAA add-on\nenablement.",{"type":15,"tag":29,"props":461,"children":463},{"id":462},"what-integration-looks-like",[464],{"type":34,"value":465},"What integration looks like",{"type":15,"tag":37,"props":467,"children":468},{},[469],{"type":34,"value":470},"The realistic path for an operations director:",{"type":15,"tag":472,"props":473,"children":474},"ol",{},[475,485,495,505],{"type":15,"tag":178,"props":476,"children":477},{},[478,483],{"type":15,"tag":43,"props":479,"children":480},{},[481],{"type":34,"value":482},"EHR vendor conversation.",{"type":34,"value":484}," Your IT team asks the EHR\nvendor for an HL7v2 ADT feed pointed at a FastYoke\ninbound endpoint. Most interface engines (Mirth,\nRhapsody, Cloverleaf) ship this out of the box. You're\nnot asking the EHR vendor to write code — you're asking\nthem to add an outbound route.",{"type":15,"tag":178,"props":486,"children":487},{},[488,493],{"type":15,"tag":43,"props":489,"children":490},{},[491],{"type":34,"value":492},"Tenant provisioning.",{"type":34,"value":494}," FastYoke spins up your tenant\nwith the HIPAA add-on enabled. BAA is executed before\nany PHI flows. PII tagging is configured on the entity\nschemas that hold patient data.",{"type":15,"tag":178,"props":496,"children":497},{},[498,503],{"type":15,"tag":43,"props":499,"children":500},{},[501],{"type":34,"value":502},"Pilot one unit.",{"type":34,"value":504}," Run one unit (probably the busiest\none) in parallel with the whiteboard for 30 days. Both\nsystems get the data. Charge nurse compares throughput\nmetrics with the new board against the whiteboard's\ntribal knowledge.",{"type":15,"tag":178,"props":506,"children":507},{},[508,513],{"type":15,"tag":43,"props":509,"children":510},{},[511],{"type":34,"value":512},"Expand.",{"type":34,"value":514}," When the unit trusts the board more than\nthe whiteboard, expand to the rest of the hospital.\nThe transport, discharge, and EVS boards come online\nin sequence, not all at once.",{"type":15,"tag":37,"props":516,"children":517},{},[518,520,525],{"type":34,"value":519},"This is ",{"type":15,"tag":43,"props":521,"children":522},{},[523],{"type":34,"value":524},"weeks, not quarters.",{"type":34,"value":526}," No clinical-systems\nintegration project. The HL7v2 ADT feed is the only\nintegration point; everything else is operator-driven\ninside the FastYoke tenant.",{"type":15,"tag":29,"props":528,"children":530},{"id":529},"honest-tradeoffs",[531],{"type":34,"value":532},"Honest tradeoffs",{"type":15,"tag":37,"props":534,"children":535},{},[536],{"type":34,"value":537},"FastYoke is not a hospital information system:",{"type":15,"tag":174,"props":539,"children":540},{},[541,551,561,578],{"type":15,"tag":178,"props":542,"children":543},{},[544,549],{"type":15,"tag":43,"props":545,"children":546},{},[547],{"type":34,"value":548},"Not a certified EHR.",{"type":34,"value":550}," You still need one. FastYoke\nruns alongside it.",{"type":15,"tag":178,"props":552,"children":553},{},[554,559],{"type":15,"tag":43,"props":555,"children":556},{},[557],{"type":34,"value":558},"No clinical decision support.",{"type":34,"value":560}," Boards display state;\nthey don't recommend care.",{"type":15,"tag":178,"props":562,"children":563},{},[564,569,571,576],{"type":15,"tag":43,"props":565,"children":566},{},[567],{"type":34,"value":568},"HIPAA-by-default, not by accident.",{"type":34,"value":570}," The HIPAA add-on\nmust be enabled and the BAA executed; PHI tagging is\nthe tenant's responsibility. Defaults are ",{"type":15,"tag":56,"props":572,"children":573},{},[574],{"type":34,"value":575},"opt-in\nopaque-by-default",{"type":34,"value":577},", not silently compliant.",{"type":15,"tag":178,"props":579,"children":580},{},[581,586],{"type":15,"tag":43,"props":582,"children":583},{},[584],{"type":34,"value":585},"The ADT connector is read-only.",{"type":34,"value":587}," Charges, orders,\nand chart edits all stay in the EHR. By design — but if\nyou want a system that writes to the chart, FastYoke is\nthe wrong shape.",{"type":15,"tag":37,"props":589,"children":590},{},[591],{"type":34,"value":592},"If any of those is a deal-breaker, you need a different\nclass of product, not a different vendor.",{"type":15,"tag":29,"props":594,"children":596},{"id":595},"how-to-start",[597],{"type":34,"value":598},"How to start",{"type":15,"tag":472,"props":600,"children":601},{},[602,615,628],{"type":15,"tag":178,"props":603,"children":604},{},[605,607,613],{"type":34,"value":606},"Email ",{"type":15,"tag":129,"props":608,"children":610},{"className":609},[],[611],{"type":34,"value":612},"security@fastyoke.io",{"type":34,"value":614}," with \"healthcare\" in the\nsubject. Reference this guide. You'll get the\nprocurement packet (security posture, BAA template,\nSOC 2 roadmap, encryption attestation).",{"type":15,"tag":178,"props":616,"children":617},{},[618,620,626],{"type":34,"value":619},"Request ",{"type":15,"tag":80,"props":621,"children":623},{"href":622},"\u002Fgetting-started",[624],{"type":34,"value":625},"early access",{"type":34,"value":627}," — healthcare\nworkloads are evaluated cohort-by-cohort, and we'll\nschedule a 20-minute scoping call with someone who's\nwired healthcare tenants before.",{"type":15,"tag":178,"props":629,"children":630},{},[631,633,638],{"type":34,"value":632},"Read the ",{"type":15,"tag":80,"props":634,"children":636},{"href":635},"\u002Fsolutions\u002Fhealthcare",[637],{"type":34,"value":635},{"type":34,"value":639},"\npage if you haven't — it covers the apps and the\nsecurity posture in one place.",{"type":15,"tag":23,"props":641,"children":643},{"band":642,"max-width":26},"gray",[644],{"type":15,"tag":37,"props":645,"children":646},{},[647,649,654,656,661],{"type":34,"value":648},"For procurement or compliance review packets, email\n",{"type":15,"tag":80,"props":650,"children":652},{"href":651},"mailto:security@fastyoke.io",[653],{"type":34,"value":612},{"type":34,"value":655}," and\nreference ",{"type":15,"tag":56,"props":657,"children":658},{},[659],{"type":34,"value":660},"healthcare",{"type":34,"value":662}," in the subject line.",{"title":7,"searchDepth":664,"depth":664,"links":665},2,[666,667,668,675,676,677,678],{"id":31,"depth":664,"text":35},{"id":65,"depth":664,"text":68},{"id":119,"depth":664,"text":122,"children":669},[670,672,673,674],{"id":156,"depth":671,"text":159},3,{"id":241,"depth":671,"text":244},{"id":285,"depth":671,"text":288},{"id":329,"depth":671,"text":332},{"id":364,"depth":664,"text":367},{"id":462,"depth":664,"text":465},{"id":529,"depth":664,"text":532},{"id":595,"depth":664,"text":598},"markdown","content:guides:hospital-throughput-on-fastyoke.md","content","guides\u002Fhospital-throughput-on-fastyoke.md","guides\u002Fhospital-throughput-on-fastyoke","md",1783575469971]