[{"data":1,"prerenderedAt":998},["ShallowReactive",2],{"handbook-\u002Fhandbook\u002Fengineering\u002Fops\u002F":3,"handbook-nav":194},{"id":4,"title":5,"body":6,"description":182,"extension":187,"meta":188,"navigation":189,"path":190,"seo":191,"stem":192,"__hash__":193},"handbook\u002Fhandbook\u002Fengineering\u002Fops\u002Findex.md","Platform Ops",{"type":7,"value":8,"toc":181},"minimark",[9,13,72,77,93,154,157],[10,11,5],"h1",{"id":12},"platform-ops",[14,15,16,24,30,36,42,48,54,60,66],"ul",{},[17,18,19],"li",{},[20,21,23],"a",{"href":22},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fobservability","Observability",[17,25,26],{},[20,27,29],{"href":28},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fstaging","Staging Environment",[17,31,32],{},[20,33,35],{"href":34},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction","Production Environment",[17,37,38],{},[20,39,41],{"href":40},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fdeployment","Deployment",[17,43,44],{},[20,45,47],{"href":46},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fincident-response","Incident Response",[17,49,50],{},[20,51,53],{"href":52},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated","FlowFuse Dedicated",[17,55,56],{},[20,57,59],{"href":58},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction-stack-update","Updating Stacks",[17,61,62],{},[20,63,65],{"href":64},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant","Self Hosted Assistant",[17,67,68],{},[20,69,71],{"href":70},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes","Certifed Nodes",[73,74,76],"h2",{"id":75},"cicd","CI\u002FCD",[78,79,80,81,87,88,92],"p",{},"As part of our CI\u002FCD pipeline in our ",[20,82,86],{"href":83,"rel":84},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fflowfuse\u002F",[85],"nofollow","@flowfuse\u002Fflowfuse"," repository, we perform the following actions when code is merged to the ",[89,90,91],"code",{},"main"," branch:",[94,95,96,104,122,132,140,151],"ol",{},[17,97,98,99],{},"Several backend and UI tests are executed against the code by ",[20,100,103],{"href":101,"rel":102},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fflowfuse\u002Fblob\u002Fmain\u002F.github\u002Fworkflows\u002Ftests.yml",[85],"this pipeline",[17,105,106,107,112,113,116,117,121],{},"Once all tests complete with success, ",[20,108,111],{"href":109,"rel":110},"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@flowfuse\u002Fflowfuse",[85],"FlowFuse npm package"," is built and published to the npm registry with a ",[89,114,115],{},"nightly"," tag by ",[20,118,103],{"href":119,"rel":120},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fflowfuse\u002Factions\u002Fworkflows\u002Fpublish.yml",[85],".",[17,123,124,112,127,116,129,121],{},[20,125,111],{"href":109,"rel":126},[85],[89,128,115],{},[20,130,103],{"href":119,"rel":131},[85],[17,133,134,135],{},"The same pipeline triggers another action, responsible for ",[20,136,139],{"href":137,"rel":138},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fhelm\u002Factions\u002Fworkflows\u002Fflowforge-container.yml",[85],"building a container image",[17,141,142,143,147,148,150],{},"Container image build pipeline uses ",[20,144,146],{"href":109,"rel":145},[85],"flowfuse npm package"," created in step 1 (tagged as ",[89,149,115],{},") to build a fresh container image",[17,152,153],{},"The resulting image is used to perform deployment on both staging and production environments.",[78,155,156],{},"You can read more about our various environments here:",[14,158,159,166,175],{},[17,160,161,165],{},[20,162,164],{"href":163},"\u002Fhandbook\u002Fengineering\u002Fcontributing\u002F#test-changes-in-staging","Pre Staging"," - used for each individual pull request as part of the code review process.",[17,167,168,171,172,174],{},[20,169,170],{"href":28},"Staging"," - triggered by merge to ",[89,173,91],{}," branch, used for testing the full application, without fear of damaging the production environment.",[17,176,177,180],{},[20,178,179],{"href":34},"Production"," - the live environment that our customers use.",{"title":182,"searchDepth":183,"depth":183,"links":184},"",4,[185],{"id":75,"depth":186,"text":76},2,"md",{},null,"\u002Fhandbook\u002Fengineering\u002Fops",{"title":5,"description":182},"handbook\u002Fengineering\u002Fops\u002Findex","SwET3hnYKJ4VefbkMjkBhc52Nb5FXxYJCzF_Qr7GaW0",[195],{"title":196,"path":197,"stem":198,"children":199},"Handbook","\u002Fhandbook","handbook",[200,202,328,360,563,652,714,856,861],{"title":196,"path":197,"stem":201},"handbook\u002Findex",{"title":203,"group":203,"icon":204,"order":205,"path":206,"stem":207,"children":208},"Company","i-lucide-building-2",1,"\u002Fhandbook\u002Fcompany","handbook\u002Fcompany\u002Findex",[209,210,214,218,222,241,245,249,253,320,324],{"title":203,"path":206,"stem":207},{"title":211,"path":212,"stem":213},"Board & Investors","\u002Fhandbook\u002Fcompany\u002Fboard","handbook\u002Fcompany\u002Fboard",{"title":215,"path":216,"stem":217},"Communications","\u002Fhandbook\u002Fcompany\u002Fcommunication","handbook\u002Fcompany\u002Fcommunication",{"title":219,"path":220,"stem":221},"Decision making and project management","\u002Fhandbook\u002Fcompany\u002Fdecisions","handbook\u002Fcompany\u002Fdecisions",{"title":223,"icon":224,"path":225,"stem":226,"children":227},"Guides","i-lucide-book-open","\u002Fhandbook\u002Fcompany\u002Fguides","handbook\u002Fcompany\u002Fguides\u002Findex",[228,229,233,237],{"title":223,"path":225,"stem":226},{"title":230,"path":231,"stem":232},"Editing the Handbook","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgit","handbook\u002Fcompany\u002Fguides\u002Fgit",{"title":234,"path":235,"stem":236},"Google Workspace","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgworkspace","handbook\u002Fcompany\u002Fguides\u002Fgworkspace",{"title":238,"path":239,"stem":240},"Markdown Guide","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fmarkdown","handbook\u002Fcompany\u002Fguides\u002Fmarkdown",{"title":242,"path":243,"stem":244},"Organizational Structure","\u002Fhandbook\u002Fcompany\u002Forganizational-structure","handbook\u002Fcompany\u002Forganizational-structure",{"title":246,"path":247,"stem":248},"Principles","\u002Fhandbook\u002Fcompany\u002Fprinciples","handbook\u002Fcompany\u002Fprinciples",{"title":250,"path":251,"stem":252},"Remote Work","\u002Fhandbook\u002Fcompany\u002Fremote","handbook\u002Fcompany\u002Fremote",{"title":254,"icon":255,"path":256,"stem":257,"children":258},"Security","i-lucide-shield","\u002Fhandbook\u002Fcompany\u002Fsecurity","handbook\u002Fcompany\u002Fsecurity\u002Findex",[259,260,264,268,272,276,280,284,288,292,296,300,304,308,312,316],{"title":254,"path":256,"stem":257},{"title":261,"path":262,"stem":263},"Access Control Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Faccess-control","handbook\u002Fcompany\u002Fsecurity\u002Faccess-control",{"title":265,"path":266,"stem":267},"AI Development and Customer Data Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data","handbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data",{"title":269,"path":270,"stem":271},"Asset Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fasset-management","handbook\u002Fcompany\u002Fsecurity\u002Fasset-management",{"title":273,"path":274,"stem":275},"Business Continuity & Disaster Recovery Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity","handbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity",{"title":277,"path":278,"stem":279},"Hardware Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security","handbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security",{"title":281,"path":282,"stem":283},"Cryptography Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcryptography","handbook\u002Fcompany\u002Fsecurity\u002Fcryptography",{"title":285,"path":286,"stem":287},"Data Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fdata-management","handbook\u002Fcompany\u002Fsecurity\u002Fdata-management",{"title":289,"path":290,"stem":291},"Human Resources Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources","handbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources",{"title":293,"path":294,"stem":295},"Incident Response Plan","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fincident-response","handbook\u002Fcompany\u002Fsecurity\u002Fincident-response",{"title":297,"path":298,"stem":299},"Information Security Policy and Acceptable Use Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security",{"title":301,"path":302,"stem":303},"Information Security Roles and Responsibilities","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles",{"title":305,"path":306,"stem":307},"Operations Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Foperations-security","handbook\u002Fcompany\u002Fsecurity\u002Foperations-security",{"title":309,"path":310,"stem":311},"Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Frisk-management","handbook\u002Fcompany\u002Fsecurity\u002Frisk-management",{"title":313,"path":314,"stem":315},"Secure Development Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fsecure-development","handbook\u002Fcompany\u002Fsecurity\u002Fsecure-development",{"title":317,"path":318,"stem":319},"Third-Party Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management","handbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management",{"title":321,"path":322,"stem":323},"Strategy","\u002Fhandbook\u002Fcompany\u002Fstrategy","handbook\u002Fcompany\u002Fstrategy",{"title":325,"path":326,"stem":327},"Values","\u002Fhandbook\u002Fcompany\u002Fvalues","handbook\u002Fcompany\u002Fvalues",{"title":329,"group":330,"icon":331,"order":183,"path":332,"stem":333,"children":334},"Design","Engineering & Design Practices","i-lucide-pen-tool","\u002Fhandbook\u002Fdesign","handbook\u002Fdesign\u002Findex",[335,336,340,344,348,352,356],{"title":329,"path":332,"stem":333},{"title":337,"path":338,"stem":339},"Art Requests","\u002Fhandbook\u002Fdesign\u002Fart-requests","handbook\u002Fdesign\u002Fart-requests",{"title":341,"path":342,"stem":343},"Branding","\u002Fhandbook\u002Fdesign\u002Fbranding","handbook\u002Fdesign\u002Fbranding",{"title":345,"path":346,"stem":347},"Design Thinking","\u002Fhandbook\u002Fdesign\u002Fdesign-thinking","handbook\u002Fdesign\u002Fdesign-thinking",{"title":349,"path":350,"stem":351},"Process","\u002Fhandbook\u002Fdesign\u002Fprocess","handbook\u002Fdesign\u002Fprocess",{"title":353,"path":354,"stem":355},"Tools","\u002Fhandbook\u002Fdesign\u002Ftools","handbook\u002Fdesign\u002Ftools",{"title":357,"path":358,"stem":359},"Video","\u002Fhandbook\u002Fdesign\u002Fvideos","handbook\u002Fdesign\u002Fvideos",{"title":361,"group":330,"icon":362,"order":363,"path":364,"stem":365,"children":366},"Engineering","i-lucide-code-2",3,"\u002Fhandbook\u002Fengineering","handbook\u002Fengineering\u002Findex",[367,368,372,391,395,399,403,426,449,453,510,514,541,545,560],{"title":361,"path":364,"stem":365},{"title":369,"path":370,"stem":371},"Blueprints","\u002Fhandbook\u002Fengineering\u002Fblueprints","handbook\u002Fengineering\u002Fblueprints",{"title":373,"icon":374,"path":375,"stem":376,"children":377},"Contributing","i-lucide-git-pull-request","\u002Fhandbook\u002Fengineering\u002Fcontributing","handbook\u002Fengineering\u002Fcontributing\u002Findex",[378,379,383,387],{"title":373,"path":375,"stem":376},{"title":380,"path":381,"stem":382},"Certified Nodes","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes","handbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes",{"title":384,"path":385,"stem":386},"FF Tables","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fff-tables","handbook\u002Fengineering\u002Fcontributing\u002Fff-tables",{"title":388,"path":389,"stem":390},"Team NPM Registry","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry","handbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry",{"title":392,"path":393,"stem":394},"Node-RED Dashboard","\u002Fhandbook\u002Fengineering\u002Fdashboard","handbook\u002Fengineering\u002Fdashboard",{"title":396,"path":397,"stem":398},"Dependency Updates","\u002Fhandbook\u002Fengineering\u002Fdependency-updates","handbook\u002Fengineering\u002Fdependency-updates",{"title":400,"path":401,"stem":402},"Feature Flags in PostHog","\u002Fhandbook\u002Fengineering\u002Ffeature-flags","handbook\u002Fengineering\u002Ffeature-flags",{"title":404,"icon":405,"path":406,"stem":407,"children":408},"Front End","i-lucide-layout-dashboard","\u002Fhandbook\u002Fengineering\u002Ffrontend","handbook\u002Fengineering\u002Ffrontend\u002Findex",[409,410,414,418,422],{"title":404,"path":406,"stem":407},{"title":411,"path":412,"stem":413},"Data Attributes","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes","handbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes",{"title":415,"path":416,"stem":417},"Front-End Layouts","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Flayouts","handbook\u002Fengineering\u002Ffrontend\u002Flayouts",{"title":419,"path":420,"stem":421},"Front-End Services","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fservices","handbook\u002Fengineering\u002Ffrontend\u002Fservices",{"title":423,"path":424,"stem":425},"Front-End Testing","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Ftesting","handbook\u002Fengineering\u002Ffrontend\u002Ftesting",{"title":5,"icon":427,"path":190,"stem":192,"children":428},"i-lucide-server",[429,430,432,434,436,438,440,442,445,447],{"title":5,"path":190,"stem":192},{"title":380,"path":70,"stem":431},"handbook\u002Fengineering\u002Fops\u002Fcertified-nodes",{"title":53,"path":52,"stem":433},"handbook\u002Fengineering\u002Fops\u002Fdedicated",{"title":41,"path":40,"stem":435},"handbook\u002Fengineering\u002Fops\u002Fdeployment",{"title":47,"path":46,"stem":437},"handbook\u002Fengineering\u002Fops\u002Fincident-response",{"title":23,"path":22,"stem":439},"handbook\u002Fengineering\u002Fops\u002Fobservability",{"title":35,"path":34,"stem":441},"handbook\u002Fengineering\u002Fops\u002Fproduction",{"title":443,"path":58,"stem":444},"Update Stacks on Production","handbook\u002Fengineering\u002Fops\u002Fproduction-stack-update",{"title":65,"path":64,"stem":446},"handbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant",{"title":29,"path":28,"stem":448},"handbook\u002Fengineering\u002Fops\u002Fstaging",{"title":450,"path":451,"stem":452},"Packaging Guidelines","\u002Fhandbook\u002Fengineering\u002Fpackaging","handbook\u002Fengineering\u002Fpackaging",{"title":454,"icon":455,"path":456,"stem":457,"children":458},"Product","i-lucide-package","\u002Fhandbook\u002Fengineering\u002Fproduct","handbook\u002Fengineering\u002Fproduct\u002Findex",[459,460,464,468,472,476,480,487,491,494,498,502,506],{"title":454,"path":456,"stem":457},{"title":461,"path":462,"stem":463},"Feature Catalog","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeatures","handbook\u002Fengineering\u002Fproduct\u002Ffeatures",{"title":465,"path":466,"stem":467},"Feedback","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeedback","handbook\u002Fengineering\u002Fproduct\u002Ffeedback",{"title":469,"path":470,"stem":471},"Glossary","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fglossary","handbook\u002Fengineering\u002Fproduct\u002Fglossary",{"title":473,"path":474,"stem":475},"Methodology","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmethodology","handbook\u002Fengineering\u002Fproduct\u002Fmethodology",{"title":477,"path":478,"stem":479},"Metrics","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmetrics","handbook\u002Fengineering\u002Fproduct\u002Fmetrics",{"title":481,"path":482,"stem":483,"children":484,"icon":486},"Personas","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpersonas","handbook\u002Fengineering\u002Fproduct\u002Fpersonas\u002Findex",[485],{"title":481,"path":482,"stem":483},"i-lucide-user-circle",{"title":488,"path":489,"stem":490},"Pricing Principles","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpricing","handbook\u002Fengineering\u002Fproduct\u002Fpricing",{"title":246,"path":492,"stem":493},"\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fprinciples","handbook\u002Fengineering\u002Fproduct\u002Fprinciples",{"title":495,"path":496,"stem":497},"Product Swimlanes","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes","handbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes",{"title":499,"path":500,"stem":501},"Product Growth","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ftelemetry","handbook\u002Fengineering\u002Fproduct\u002Ftelemetry",{"title":503,"path":504,"stem":505},"Versioning","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fversioning","handbook\u002Fengineering\u002Fproduct\u002Fversioning",{"title":507,"path":508,"stem":509},"Market Segments","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fverticals","handbook\u002Fengineering\u002Fproduct\u002Fverticals",{"title":511,"path":512,"stem":513},"Project Management","\u002Fhandbook\u002Fengineering\u002Fproject-management","handbook\u002Fengineering\u002Fproject-management",{"title":515,"icon":516,"path":517,"stem":518,"children":519},"Releases","i-lucide-rocket","\u002Fhandbook\u002Fengineering\u002Freleases","handbook\u002Fengineering\u002Freleases\u002Findex",[520,521,525,529,533,537],{"title":515,"path":517,"stem":518},{"title":522,"path":523,"stem":524},"Dashboard 2.0 Releases","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdashboard-2","handbook\u002Fengineering\u002Freleases\u002Fdashboard-2",{"title":526,"path":527,"stem":528},"Release Process - Digital Ocean","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdigital-ocean","handbook\u002Fengineering\u002Freleases\u002Fdigital-ocean",{"title":530,"path":531,"stem":532},"Release Process","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fprocess","handbook\u002Fengineering\u002Freleases\u002Fprocess",{"title":534,"path":535,"stem":536},"Release Blogs","\u002Fhandbook\u002Fengineering\u002Freleases\u002Frelease-blogs","handbook\u002Fengineering\u002Freleases\u002Frelease-blogs",{"title":538,"path":539,"stem":540},"Changelog Posts","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fwriting-changelog","handbook\u002Fengineering\u002Freleases\u002Fwriting-changelog",{"title":542,"path":543,"stem":544},"Security Policy","\u002Fhandbook\u002Fengineering\u002Fsecurity","handbook\u002Fengineering\u002Fsecurity",{"title":546,"path":547,"stem":548,"children":549,"icon":559},"Support","\u002Fhandbook\u002Fengineering\u002Fsupport","handbook\u002Fengineering\u002Fsupport\u002Findex",[550,551,555],{"title":546,"path":547,"stem":548},{"title":552,"path":553,"stem":554},"Triage Duty","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftriage","handbook\u002Fengineering\u002Fsupport\u002Ftriage",{"title":556,"path":557,"stem":558},"Troubleshooting","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","handbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","i-lucide-life-buoy",{"title":353,"path":561,"stem":562},"\u002Fhandbook\u002Fengineering\u002Ftools","handbook\u002Fengineering\u002Ftools",{"title":564,"group":565,"icon":566,"order":567,"path":568,"stem":569,"children":570},"Marketing","Marketing department","i-lucide-megaphone",6,"\u002Fhandbook\u002Fmarketing","handbook\u002Fmarketing\u002Findex",[571,572,578,582,597,616,620,624,628,632,636,640,644,648],{"title":564,"path":568,"stem":569},{"title":573,"path":574,"stem":575,"children":576},"Account-Based Marketing","\u002Fhandbook\u002Fmarketing\u002Faccount-based-marketing","handbook\u002Fmarketing\u002Faccount-based-marketing\u002Findex",[577],{"title":573,"path":574,"stem":575},{"title":579,"path":580,"stem":581},"Brand Voice","\u002Fhandbook\u002Fmarketing\u002Fbrand-voice","handbook\u002Fmarketing\u002Fbrand-voice",{"title":583,"icon":584,"path":585,"stem":586,"children":587},"Community","i-lucide-users-2","\u002Fhandbook\u002Fmarketing\u002Fcommunity","handbook\u002Fmarketing\u002Fcommunity\u002Findex",[588,589,593],{"title":583,"path":585,"stem":586},{"title":590,"path":591,"stem":592},"Community Guidelines","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines","handbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines",{"title":594,"path":595,"stem":596},"Forums And Support","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support","handbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support",{"title":598,"icon":599,"path":600,"stem":601,"children":602,"order":205},"Content Strategy","i-lucide-file-text","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy","handbook\u002Fmarketing\u002Fcontent-strategy\u002Findex",[603,604,608,612],{"title":598,"path":600,"stem":601,"order":205},{"title":605,"path":606,"stem":607},"Blog","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog",{"title":609,"path":610,"stem":611},"Customer Stories","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories",{"title":613,"path":614,"stem":615},"Webinars","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars",{"title":617,"path":618,"stem":619},"Events","\u002Fhandbook\u002Fmarketing\u002Fevents","handbook\u002Fmarketing\u002Fevents",{"title":621,"path":622,"stem":623},"How we work","\u002Fhandbook\u002Fmarketing\u002Fhow-we-work","handbook\u002Fmarketing\u002Fhow-we-work",{"title":625,"path":626,"stem":627},"Lead Activation","\u002Fhandbook\u002Fmarketing\u002Flead-activation","handbook\u002Fmarketing\u002Flead-activation",{"title":629,"path":630,"stem":631},"Lead Generation","\u002Fhandbook\u002Fmarketing\u002Fleads","handbook\u002Fmarketing\u002Fleads",{"title":633,"path":634,"stem":635},"Company Messaging","\u002Fhandbook\u002Fmarketing\u002Fmessaging","handbook\u002Fmarketing\u002Fmessaging",{"title":637,"path":638,"stem":639},"Marketing Programs","\u002Fhandbook\u002Fmarketing\u002Fprograms","handbook\u002Fmarketing\u002Fprograms",{"title":641,"path":642,"stem":643},"Sales Development Representative (SDR)","\u002Fhandbook\u002Fmarketing\u002Fsdr","handbook\u002Fmarketing\u002Fsdr",{"title":645,"path":646,"stem":647},"Social Media","\u002Fhandbook\u002Fmarketing\u002Fsocial-media","handbook\u002Fmarketing\u002Fsocial-media",{"title":649,"path":650,"stem":651},"Website","\u002Fhandbook\u002Fmarketing\u002Fwebsite","handbook\u002Fmarketing\u002Fwebsite",{"title":653,"group":203,"icon":654,"order":186,"path":655,"stem":656,"children":657},"Operations","i-lucide-settings-2","\u002Fhandbook\u002Foperations","handbook\u002Foperations\u002Findex",[658,659,663,667,671,694,698,702,706,710],{"title":653,"path":655,"stem":656},{"title":660,"path":661,"stem":662},"Accounting","\u002Fhandbook\u002Foperations\u002Faccounting","handbook\u002Foperations\u002Faccounting",{"title":664,"path":665,"stem":666},"Accounts","\u002Fhandbook\u002Foperations\u002Faccounts","handbook\u002Foperations\u002Faccounts",{"title":668,"path":669,"stem":670},"Billing","\u002Fhandbook\u002Foperations\u002Fbilling","handbook\u002Foperations\u002Fbilling",{"title":672,"icon":673,"path":674,"stem":675,"children":676},"CEO Ops","i-lucide-briefcase","\u002Fhandbook\u002Foperations\u002Fceo-ops","handbook\u002Foperations\u002Fceo-ops\u002Findex",[677,678,682,686,690],{"title":672,"path":674,"stem":675},{"title":679,"path":680,"stem":681},"Calendar Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management","handbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management",{"title":683,"path":684,"stem":685},"Inbox Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Finbox-management","handbook\u002Foperations\u002Fceo-ops\u002Finbox-management",{"title":687,"path":688,"stem":689},"Task Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftask-managment","handbook\u002Foperations\u002Fceo-ops\u002Ftask-managment",{"title":691,"path":692,"stem":693},"Travel Booking","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking","handbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking",{"title":695,"path":696,"stem":697},"Change Control","\u002Fhandbook\u002Foperations\u002Fchange","handbook\u002Foperations\u002Fchange",{"title":699,"path":700,"stem":701},"Commission Payment","\u002Fhandbook\u002Foperations\u002Fcommission-payment","handbook\u002Foperations\u002Fcommission-payment",{"title":703,"path":704,"stem":705},"Data at FlowFuse","\u002Fhandbook\u002Foperations\u002Fdata","handbook\u002Foperations\u002Fdata",{"title":707,"path":708,"stem":709},"Signatures","\u002Fhandbook\u002Foperations\u002Fsignatures","handbook\u002Foperations\u002Fsignatures",{"title":711,"path":712,"stem":713},"Vendors","\u002Fhandbook\u002Foperations\u002Fvendors","handbook\u002Foperations\u002Fvendors",{"title":715,"group":716,"icon":717,"order":718,"path":719,"stem":720,"children":721},"People Ops","Internal Operations","i-lucide-users",5,"\u002Fhandbook\u002Fpeopleops","handbook\u002Fpeopleops\u002Findex",[722,723,727,731,735,739,743,766,832,836,840,844,848,852],{"title":715,"path":719,"stem":720},{"title":724,"path":725,"stem":726},"Coaching Plans","\u002Fhandbook\u002Fpeopleops\u002Fcoaching-plans","handbook\u002Fpeopleops\u002Fcoaching-plans",{"title":728,"path":729,"stem":730},"Code of Conduct","\u002Fhandbook\u002Fpeopleops\u002Fcode-of-conduct","handbook\u002Fpeopleops\u002Fcode-of-conduct",{"title":732,"path":733,"stem":734},"Compensation","\u002Fhandbook\u002Fpeopleops\u002Fcompensation","handbook\u002Fpeopleops\u002Fcompensation",{"title":736,"path":737,"stem":738},"Compliance & Regulatory","\u002Fhandbook\u002Fpeopleops\u002Fcompliance","handbook\u002Fpeopleops\u002Fcompliance",{"title":740,"path":741,"stem":742},"Expenses","\u002Fhandbook\u002Fpeopleops\u002Fexpenses","handbook\u002Fpeopleops\u002Fexpenses",{"title":744,"icon":745,"path":746,"stem":747,"children":748},"Hiring","i-lucide-user-plus","\u002Fhandbook\u002Fpeopleops\u002Fhiring","handbook\u002Fpeopleops\u002Fhiring\u002Findex",[749,750,754,758,762],{"title":744,"path":746,"stem":747},{"title":751,"path":752,"stem":753},"GitHub Navigation","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation","handbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation",{"title":755,"path":756,"stem":757},"Working with Recruiters","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Frecruiters","handbook\u002Fpeopleops\u002Fhiring\u002Frecruiters",{"title":759,"path":760,"stem":761},"Screening Call","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call","handbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call",{"title":763,"path":764,"stem":765},"STAR Questions","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","handbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions",{"title":767,"icon":768,"path":769,"stem":770,"children":771},"Job Descriptions","i-lucide-file-badge","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Findex",[772,773,777,781,785,789,793,797,801,805,809,813,817,821,824,828],{"title":767,"path":769,"stem":770},{"title":774,"path":775,"stem":776},"Account Executive","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive",{"title":778,"path":779,"stem":780},"CEO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo",{"title":782,"path":783,"stem":784},"Chief of Staff","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff",{"title":786,"path":787,"stem":788},"CTO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto",{"title":790,"path":791,"stem":792},"Engineering Levels","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels",{"title":794,"path":795,"stem":796},"Engineering Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager",{"title":798,"path":799,"stem":800},"Fullstack Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer",{"title":802,"path":803,"stem":804},"Fullstack Engineer (AI-Focused)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai",{"title":806,"path":807,"stem":808},"Head of Marketing","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing",{"title":810,"path":811,"stem":812},"Lead Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager",{"title":814,"path":815,"stem":816},"Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager",{"title":818,"path":819,"stem":820},"Product Marketer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer",{"title":641,"path":822,"stem":823},"\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative",{"title":825,"path":826,"stem":827},"Solutions Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer",{"title":829,"path":830,"stem":831},"VP of Sales","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales",{"title":833,"path":834,"stem":835},"Holiday & Leave","\u002Fhandbook\u002Fpeopleops\u002Fleave","handbook\u002Fpeopleops\u002Fleave",{"title":837,"path":838,"stem":839},"PeopleOps Policies","\u002Fhandbook\u002Fpeopleops\u002Forganization","handbook\u002Fpeopleops\u002Forganization",{"title":841,"path":842,"stem":843},"Performance review","\u002Fhandbook\u002Fpeopleops\u002Fperformance-review","handbook\u002Fpeopleops\u002Fperformance-review",{"title":845,"path":846,"stem":847},"Summit","\u002Fhandbook\u002Fpeopleops\u002Fsummit","handbook\u002Fpeopleops\u002Fsummit",{"title":849,"path":850,"stem":851},"Travel","\u002Fhandbook\u002Fpeopleops\u002Ftravel","handbook\u002Fpeopleops\u002Ftravel",{"title":853,"path":854,"stem":855},"U.S. Compliance Policies","\u002Fhandbook\u002Fpeopleops\u002Fus-compliance","handbook\u002Fpeopleops\u002Fus-compliance",{"title":857,"path":858,"stem":859,"group":196,"order":860},"Recent Updates","\u002Fhandbook\u002Frecent-changes","handbook\u002Frecent-changes",0,{"title":862,"group":862,"icon":863,"order":864,"path":865,"stem":866,"children":867},"Commercial Organization","i-lucide-trending-up",7,"\u002Fhandbook\u002Fsales","handbook\u002Fsales\u002Findex",[868,869,877,882,886,891,896,901,906,911,916,936,941,945,949,954,962,966,970,975,979,983,988,993],{"title":862,"path":865,"stem":866},{"title":870,"path":871,"stem":872,"children":873,"order":875,"icon":876},"Sales Compensation Plan","\u002Fhandbook\u002Fsales\u002Fcommission-plan","handbook\u002Fsales\u002Fcommission-plan\u002Findex",[874],{"title":870,"path":871,"stem":872},22,"i-lucide-dollar-sign",{"title":878,"path":879,"stem":880,"order":881},"Customer Journey Alignment","\u002Fhandbook\u002Fsales\u002Fcustomer-journey","handbook\u002Fsales\u002Fcustomer-journey",10,{"title":883,"path":884,"stem":885,"order":363},"Customer Success","\u002Fhandbook\u002Fsales\u002Fcustomer-success","handbook\u002Fsales\u002Fcustomer-success",{"title":887,"path":888,"stem":889,"order":890},"Self Hosted Dashboard v2 Multi User","\u002Fhandbook\u002Fsales\u002Fdashboard-v2","handbook\u002Fsales\u002Fdashboard-v2",20,{"title":892,"path":893,"stem":894,"order":895},"Edge Connectivity Sales Process","\u002Fhandbook\u002Fsales\u002Fedge-connect-process","handbook\u002Fsales\u002Fedge-connect-process",19,{"title":897,"path":898,"stem":899,"order":900},"Engagements & Pricing","\u002Fhandbook\u002Fsales\u002Fengagements","handbook\u002Fsales\u002Fengagements",14,{"title":902,"path":903,"stem":904,"order":905},"Forecast Review","\u002Fhandbook\u002Fsales\u002Fforecast-review","handbook\u002Fsales\u002Fforecast-review",15,{"title":907,"path":908,"stem":909,"order":910},"HubSpot","\u002Fhandbook\u002Fsales\u002Fhubspot","handbook\u002Fsales\u002Fhubspot",16,{"title":912,"path":913,"stem":914,"order":915},"Legal","\u002Fhandbook\u002Fsales\u002Flegal","handbook\u002Fsales\u002Flegal",21,{"title":917,"order":918,"icon":919,"path":920,"stem":921,"children":922},"Sales Meetings",13,"i-lucide-calendar","\u002Fhandbook\u002Fsales\u002Fmeetings","handbook\u002Fsales\u002Fmeetings\u002Findex",[923,924,928,932],{"title":917,"path":920,"stem":921},{"title":925,"path":926,"stem":927},"Demo","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdemo","handbook\u002Fsales\u002Fmeetings\u002Fdemo",{"title":929,"path":930,"stem":931},"Discovery Meeting","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdiscovery","handbook\u002Fsales\u002Fmeetings\u002Fdiscovery",{"title":933,"path":934,"stem":935},"Proof of Concept","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fpoc","handbook\u002Fsales\u002Fmeetings\u002Fpoc",{"title":937,"path":938,"stem":939,"order":940},"Onboarding & Development","\u002Fhandbook\u002Fsales\u002Fonboarding","handbook\u002Fsales\u002Fonboarding",11,{"title":942,"path":943,"stem":944,"order":567},"Commercial Team Operating Principles","\u002Fhandbook\u002Fsales\u002Foperating-principles","handbook\u002Fsales\u002Foperating-principles",{"title":946,"path":947,"stem":948,"order":718},"Partnerships","\u002Fhandbook\u002Fsales\u002Fpartnerships","handbook\u002Fsales\u002Fpartnerships",{"title":950,"path":951,"stem":952,"order":953},"Pricing Decks","\u002Fhandbook\u002Fsales\u002Fpricing-decks","handbook\u002Fsales\u002Fpricing-decks",18,{"title":955,"path":956,"stem":957,"children":958,"order":960,"icon":961},"Processes","\u002Fhandbook\u002Fsales\u002Fprocesses","handbook\u002Fsales\u002Fprocesses\u002Findex",[959],{"title":955,"path":956,"stem":957},12,"i-lucide-workflow",{"title":963,"path":964,"stem":965,"order":183},"Professional Services","\u002Fhandbook\u002Fsales\u002Fprofessional-services","handbook\u002Fsales\u002Fprofessional-services",{"title":967,"path":968,"stem":969,"order":864},"Sales Regions","\u002Fhandbook\u002Fsales\u002Fregions","handbook\u002Fsales\u002Fregions",{"title":971,"path":972,"stem":973,"order":974},"Sales Deck","\u002Fhandbook\u002Fsales\u002Fsales-deck","handbook\u002Fsales\u002Fsales-deck",17,{"title":976,"path":977,"stem":978,"order":205},"Sales","\u002Fhandbook\u002Fsales\u002Fsales-team","handbook\u002Fsales\u002Fsales-team",{"title":980,"path":981,"stem":982,"order":186},"Solution Engineering","\u002Fhandbook\u002Fsales\u002Fsolution-engineering","handbook\u002Fsales\u002Fsolution-engineering",{"title":984,"path":985,"stem":986,"order":987},"Subscription Agreement 1.5","\u002Fhandbook\u002Fsales\u002Fsubscription-agreement-1.5","handbook\u002Fsales\u002Fsubscription-agreement-1.5",23,{"title":989,"path":990,"stem":991,"order":992},"Systems & Tools","\u002Fhandbook\u002Fsales\u002Ftools","handbook\u002Fsales\u002Ftools",8,{"title":994,"path":995,"stem":996,"order":997},"Working Norms","\u002Fhandbook\u002Fsales\u002Fworking-norms","handbook\u002Fsales\u002Fworking-norms",9,1786230997825]