[{"data":1,"prerenderedAt":1490},["ShallowReactive",2],{"handbook-\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes\u002F":3,"handbook-nav":710},{"id":4,"title":5,"body":6,"description":16,"extension":702,"meta":703,"navigation":704,"path":705,"seo":706,"sitemap":707,"stem":708,"__hash__":709},"handbook\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes.md","Certified Nodes",{"type":7,"value":8,"toc":693},"minimark",[9,13,17,20,30,35,98,109,113,198,202,234,237,259,270,288,293,340,351,355,661,670,674,689],[10,11,5],"h1",{"id":12},"certified-nodes",[14,15,16],"p",{},"FlowFuse Certified Nodes are a collection of Node-RED nodes maintained and updated by FlowFuse providing trusted implementations of selected capabilities.",[14,18,19],{},"Nodes are grouped into two categories",[21,22,23,27],"ul",{},[24,25,26],"li",{},"Hub: Nodes used to carry out more IT related tasks e.g. connect to Databases",[24,28,29],{},"Edge: Nodes used to connect to physical devices to collect data e.g. Modbus",[31,32,34],"h2",{"id":33},"enroll-customers","Enroll Customers",[36,37,38,41,60,63,72,86],"ol",{},[24,39,40],{},"Customer works with Sales team",[24,42,43,44,51,52],{},"Sales Team opens an Issue on ",[45,46,50],"a",{"href":47,"rel":48},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002FCloudProject\u002Fissues\u002Fnew?template=certified-nodes-request.yml",[49],"nofollow","CloudProject"," with all required details\n",[21,53,54,57],{},[24,55,56],{},"Self Hosted or FFC Team",[24,58,59],{},"Which Catalogues of Nodes to enable (Edge, Hub, or Both)",[24,61,62],{},"Engineering member will be assigned the ticket",[24,64,65,66,71],{},"Download the \"certified-nodes-token-generator\" from the ",[45,67,70],{"href":68,"rel":69},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fengineering",[49],"engineering"," repo",[24,73,74,75],{},"Engineering will use the information from the Issue to run the tool and create the required tokens and\u002For configuration\n",[21,76,77,80,83],{},[24,78,79],{},"Make required changes ff-certified-nodes instance",[24,81,82],{},"For Self Hosted customer provide token to Sales to pass to the customer",[24,84,85],{},"For Teams on FFC go to Team Settings -> Danger -> Edit Usage limits, tick Certifed nodes and add the required catalogue URLS to the box at bottom",[24,87,88,89,93,94,97],{},"Sales provide the token to Self Hosted cutsomers. The token is to be entered on the Admin Settings -> FlowFuse Nodes page. ",[90,91,92],"strong",{},"NOTE:"," the cusomer ",[90,95,96],{},"MUST"," be running FlowFue 2.32.0 or newer before applying the token and they will need to restart Instances to pick up the new catalogues.",[14,99,100,105],{},[101,102],"img",{"alt":103,"src":104},"Screenshot of Certified Nodes token","\u002Fhandbook\u002Fengineering\u002Fimages\u002Fcertified-nodes-token.png",[106,107,108],"em",{},"Screnshot of where to enter Certfied Nodes Token",[31,110,112],{"id":111},"adding-new-nodes","Adding New Nodes",[36,114,115,118,121,129,147,155,195],{},[24,116,117],{},"Evaluate all existing Node-RED Comunity nodes",[24,119,120],{},"Select one of above or create new from scratch",[24,122,123,124,128],{},"Create a new private GitHub repository with the name ",[125,126,127],"code",{},"ffcn-"," prefix",[24,130,131,132],{},"If using an exisitng node, create copy of GitHub respository as follows\n",[21,133,134,139,142],{},[24,135,136],{},[125,137,138],{},"git clone --bare \u003Curl of existing repo>",[24,140,141],{},"cd into the created directory",[24,143,144],{},[125,145,146],{},"git push --mirror git@github.com:FlowFuse\u002Fffcn-\u003Crepo-name>.git",[24,148,149,150],{},"Complete the new repository check ",[45,151,154],{"href":152,"rel":153},"https:\u002F\u002Fgithub.com\u002FFlowFuse\u002Fadmin\u002Fissues\u002Fnew?template=new-repo.md",[49],"list",[24,156,157,158,161,162],{},"Make changes to the ",[125,159,160],{},"package.json"," to update\n",[21,163,164,171,178,188],{},[24,165,166,167,170],{},"The name and scope to be ",[125,168,169],{},"@flowfuse-certified-nodes\u002F\u003Cname>",", where name should be shortest sensible name",[24,172,173,174,177],{},"The ",[125,175,176],{},"homepage"," link to FlowFuse documentation for the node",[24,179,173,180,183,184,187],{},[125,181,182],{},"publishConfig.registry"," to point to the FlowFuse registry (",[125,185,186],{},"https:\u002F\u002Fregistry.flowfuse.com",")",[24,189,190,191,194],{},"Add .github\u002Fworkflows\u002Frelease-publish.yml",[125,192,193],{},"and the matching","CERTIFIED_NODES_PUBLISH_TOKEN` secret from 1Password.",[24,196,197],{},"Publish the node to the FlowFuse registry.",[31,199,201],{"id":200},"updating-the-catalog","Updating the Catalog",[14,203,204,205,208,209,213,214,217,218,221,222,225,226,229,230,233],{},"Once a node is published, it must be registered in the ",[125,206,207],{},"ff-certified-nodes"," Node-RED instance before it appears in customer instances or on the ",[45,210,212],{"href":211},"\u002Fintegrations","Integrations page",". This instance lives in the ",[125,215,216],{},"Internal Tools"," Application on FlowFuse Cloud (",[125,219,220],{},"ff-certified-nodes.flowfuse.cloud",") and its editor has three flow tabs: ",[90,223,224],{},"Authentication",", ",[90,227,228],{},"catalog generator",", and ",[90,231,232],{},"Usage",".",[14,235,236],{},"Two things are generated from this instance and both must be updated when adding a node:",[21,238,239,253],{},[24,240,241,244,245,248,249,252],{},[90,242,243],{},"Catalogs"," — the ",[125,246,247],{},"ff-it.json"," \u002F ",[125,250,251],{},"ff-ot.json"," files that are served to the end user's Node-RED instance.",[24,254,255,258],{},[90,256,257],{},"Authentication data"," — sent to the backend plugin in the npm registry so packages can be mapped to the correct collection.",[14,260,261,262,265,266,269],{},"Nodes are split by product, and the flow uses ",[125,263,264],{},"IT","\u002F",[125,267,268],{},"OT"," to refer to them:",[21,271,272,281],{},[24,273,274,277,278,280],{},[90,275,276],{},"Hub"," = ",[90,279,264],{}," nodes",[24,282,283,277,286,280],{},[90,284,285],{},"Edge",[90,287,268],{},[289,290,292],"h3",{"id":291},"_1-add-the-node-to-the-build-catalog","1. Add the node to the build catalog",[36,294,295,304,313,337],{},[24,296,297,298,300,301,303],{},"Open the ",[125,299,207],{}," editor and go to the ",[90,302,228],{}," tab.",[24,305,297,306,309,310,303],{},[90,307,308],{},"Build catalogues"," function node and select the ",[90,311,312],{},"On Message",[24,314,315,316,319,320],{},"Add the package name (e.g. ",[125,317,318],{},"\"@flowfuse-certified-nodes\u002F\u003Cname>\"",") to the correct const array:\n",[21,321,322,330],{},[24,323,324,327,328,280],{},[125,325,326],{},"ITNodes"," for ",[90,329,276],{},[24,331,332,327,335,280],{},[125,333,334],{},"OTNodes",[90,336,285],{},[24,338,339],{},"Deploy.",[14,341,342,343,346,347,350],{},"These arrays feed ",[125,344,345],{},"certNodesITCat"," (\"FlowFuse Hub Certified Nodes\") and ",[125,348,349],{},"certNodesOTCat"," (\"FlowFuse Edge Certified Nodes\"), which build the catalog files delivered to customers' Node-RED instances.",[289,352,354],{"id":353},"_2-add-the-node-to-the-authentication-collections","2. Add the node to the authentication collections",[36,356,357,362,384,659],{},[24,358,359,360,303],{},"In the same editor, go to the ",[90,361,224],{},[24,363,297,364,367,368,371,372,375,376,379,380,383],{},[125,365,366],{},"template"," node wired to the ",[125,369,370],{},"\u002Fcollections"," endpoint (under the ",[106,373,374],{},"Auth handler for certified nodes registry"," comment). It holds a JSON object with a ",[125,377,378],{},"collections"," array and a ",[125,381,382],{},"lookup"," map.",[24,385,386,387,389,390,393,394,397,398,400,401],{},"Add the package to the correct group in the ",[125,388,378],{}," array (",[125,391,392],{},"it"," for Hub, ",[125,395,396],{},"ot"," for Edge), and add a matching entry to the ",[125,399,382],{}," object mapping the package to its group:",[402,403,408],"pre",{"className":404,"code":405,"language":406,"meta":407,"style":407},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\"collections\": [\n  { \"name\": \"ot\", \"packages\": [\"@flowfuse-certified-nodes\u002Fopcua\", \"@flowfuse-certified-nodes\u002Frtsp\"] },\n  { \"name\": \"it\", \"packages\": [\"@flowfuse-certified-nodes\u002Fredis\", \"@flowfuse-certified-nodes\u002F\u003Cname>\"] },\n  { \"name\": \"user\", \"packages\": [\"@flowfuse-nodes@nr-mcp-server-nodes\"] }\n],\n\"lookup\": {\n  \"@flowfuse-certified-nodes\u002Fredis\": [\"it\"],\n  \"@flowfuse-certified-nodes\u002F\u003Cname>\": [\"it\"]\n}\n","json","",[125,409,410,431,492,542,586,594,608,631,653],{"__ignoreMap":407},[411,412,415,419,422,424,428],"span",{"class":413,"line":414},"line",1,[411,416,418],{"class":417},"sMK4o","\"",[411,420,378],{"class":421},"sfazB",[411,423,418],{"class":417},[411,425,427],{"class":426},"sTEyZ",": ",[411,429,430],{"class":417},"[\n",[411,432,434,437,440,444,446,449,451,453,455,458,460,463,465,467,470,472,475,477,479,481,484,486,489],{"class":413,"line":433},2,[411,435,436],{"class":417},"  {",[411,438,439],{"class":417}," \"",[411,441,443],{"class":442},"spNyl","name",[411,445,418],{"class":417},[411,447,448],{"class":417},":",[411,450,439],{"class":417},[411,452,396],{"class":421},[411,454,418],{"class":417},[411,456,457],{"class":417},",",[411,459,439],{"class":417},[411,461,462],{"class":442},"packages",[411,464,418],{"class":417},[411,466,448],{"class":417},[411,468,469],{"class":417}," [",[411,471,418],{"class":417},[411,473,474],{"class":421},"@flowfuse-certified-nodes\u002Fopcua",[411,476,418],{"class":417},[411,478,457],{"class":417},[411,480,439],{"class":417},[411,482,483],{"class":421},"@flowfuse-certified-nodes\u002Frtsp",[411,485,418],{"class":417},[411,487,488],{"class":417},"]",[411,490,491],{"class":417}," },\n",[411,493,495,497,499,501,503,505,507,509,511,513,515,517,519,521,523,525,528,530,532,534,536,538,540],{"class":413,"line":494},3,[411,496,436],{"class":417},[411,498,439],{"class":417},[411,500,443],{"class":442},[411,502,418],{"class":417},[411,504,448],{"class":417},[411,506,439],{"class":417},[411,508,392],{"class":421},[411,510,418],{"class":417},[411,512,457],{"class":417},[411,514,439],{"class":417},[411,516,462],{"class":442},[411,518,418],{"class":417},[411,520,448],{"class":417},[411,522,469],{"class":417},[411,524,418],{"class":417},[411,526,527],{"class":421},"@flowfuse-certified-nodes\u002Fredis",[411,529,418],{"class":417},[411,531,457],{"class":417},[411,533,439],{"class":417},[411,535,169],{"class":421},[411,537,418],{"class":417},[411,539,488],{"class":417},[411,541,491],{"class":417},[411,543,545,547,549,551,553,555,557,560,562,564,566,568,570,572,574,576,579,581,583],{"class":413,"line":544},4,[411,546,436],{"class":417},[411,548,439],{"class":417},[411,550,443],{"class":442},[411,552,418],{"class":417},[411,554,448],{"class":417},[411,556,439],{"class":417},[411,558,559],{"class":421},"user",[411,561,418],{"class":417},[411,563,457],{"class":417},[411,565,439],{"class":417},[411,567,462],{"class":442},[411,569,418],{"class":417},[411,571,448],{"class":417},[411,573,469],{"class":417},[411,575,418],{"class":417},[411,577,578],{"class":421},"@flowfuse-nodes@nr-mcp-server-nodes",[411,580,418],{"class":417},[411,582,488],{"class":417},[411,584,585],{"class":417}," }\n",[411,587,589,591],{"class":413,"line":588},5,[411,590,488],{"class":417},[411,592,593],{"class":426},",\n",[411,595,597,599,601,603,605],{"class":413,"line":596},6,[411,598,418],{"class":417},[411,600,382],{"class":421},[411,602,418],{"class":417},[411,604,427],{"class":426},[411,606,607],{"class":417},"{\n",[411,609,611,614,616,618,620,622,624,626,628],{"class":413,"line":610},7,[411,612,613],{"class":417},"  \"",[411,615,527],{"class":442},[411,617,418],{"class":417},[411,619,448],{"class":417},[411,621,469],{"class":417},[411,623,418],{"class":417},[411,625,392],{"class":421},[411,627,418],{"class":417},[411,629,630],{"class":417},"],\n",[411,632,634,636,638,640,642,644,646,648,650],{"class":413,"line":633},8,[411,635,613],{"class":417},[411,637,169],{"class":442},[411,639,418],{"class":417},[411,641,448],{"class":417},[411,643,469],{"class":417},[411,645,418],{"class":417},[411,647,392],{"class":421},[411,649,418],{"class":417},[411,651,652],{"class":417},"]\n",[411,654,656],{"class":413,"line":655},9,[411,657,658],{"class":417},"}\n",[24,660,339],{},[14,662,173,663,665,666,233],{},[90,664,224],{}," tab is also where customer instances\u002Fusers (tokens) are managed — see ",[45,667,669],{"href":668},"\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes#generating-tokens-for-access-to-certified-nodes-registry","Generating Tokens for Access to Certified Nodes Registry",[289,671,673],{"id":672},"result","Result",[14,675,676,677,679,680,682,683,685,686,688],{},"Once both tabs are updated and deployed, the node is included in the generated catalogs served to Node-RED instances and mapped in the registry. The website's ",[45,678,212],{"href":211}," then picks it up automatically — it fetches ",[125,681,247],{}," and ",[125,684,251],{}," from ",[125,687,220],{}," directly.",[690,691,692],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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":407,"searchDepth":544,"depth":544,"links":694},[695,696,697],{"id":33,"depth":433,"text":34},{"id":111,"depth":433,"text":112},{"id":200,"depth":433,"text":201,"children":698},[699,700,701],{"id":291,"depth":494,"text":292},{"id":353,"depth":494,"text":354},{"id":672,"depth":494,"text":673},"md",{},null,"\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes",{"title":5,"description":16},{"loc":705},"handbook\u002Fengineering\u002Fops\u002Fcertified-nodes","1B5WLZvj9PDmDb5Rt3JdcwNJo92HHcl2fAJauxp3JvE",[711],{"title":712,"path":713,"stem":714,"children":715},"Handbook","\u002Fhandbook","handbook",[716,718,843,875,1093,1177,1239,1385,1390],{"title":712,"path":713,"stem":717},"handbook\u002Findex",{"title":719,"group":719,"icon":720,"order":414,"path":721,"stem":722,"children":723},"Company","i-lucide-building-2","\u002Fhandbook\u002Fcompany","handbook\u002Fcompany\u002Findex",[724,725,729,733,737,756,760,764,768,835,839],{"title":719,"path":721,"stem":722},{"title":726,"path":727,"stem":728},"Board & Investors","\u002Fhandbook\u002Fcompany\u002Fboard","handbook\u002Fcompany\u002Fboard",{"title":730,"path":731,"stem":732},"Communications","\u002Fhandbook\u002Fcompany\u002Fcommunication","handbook\u002Fcompany\u002Fcommunication",{"title":734,"path":735,"stem":736},"Decision making and project management","\u002Fhandbook\u002Fcompany\u002Fdecisions","handbook\u002Fcompany\u002Fdecisions",{"title":738,"icon":739,"path":740,"stem":741,"children":742},"Guides","i-lucide-book-open","\u002Fhandbook\u002Fcompany\u002Fguides","handbook\u002Fcompany\u002Fguides\u002Findex",[743,744,748,752],{"title":738,"path":740,"stem":741},{"title":745,"path":746,"stem":747},"Editing the Handbook","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgit","handbook\u002Fcompany\u002Fguides\u002Fgit",{"title":749,"path":750,"stem":751},"Google Workspace","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgworkspace","handbook\u002Fcompany\u002Fguides\u002Fgworkspace",{"title":753,"path":754,"stem":755},"Markdown Guide","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fmarkdown","handbook\u002Fcompany\u002Fguides\u002Fmarkdown",{"title":757,"path":758,"stem":759},"Organizational Structure","\u002Fhandbook\u002Fcompany\u002Forganizational-structure","handbook\u002Fcompany\u002Forganizational-structure",{"title":761,"path":762,"stem":763},"Principles","\u002Fhandbook\u002Fcompany\u002Fprinciples","handbook\u002Fcompany\u002Fprinciples",{"title":765,"path":766,"stem":767},"Remote Work","\u002Fhandbook\u002Fcompany\u002Fremote","handbook\u002Fcompany\u002Fremote",{"title":769,"icon":770,"path":771,"stem":772,"children":773},"Security","i-lucide-shield","\u002Fhandbook\u002Fcompany\u002Fsecurity","handbook\u002Fcompany\u002Fsecurity\u002Findex",[774,775,779,783,787,791,795,799,803,807,811,815,819,823,827,831],{"title":769,"path":771,"stem":772},{"title":776,"path":777,"stem":778},"Access Control Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Faccess-control","handbook\u002Fcompany\u002Fsecurity\u002Faccess-control",{"title":780,"path":781,"stem":782},"AI Development and Customer Data Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data","handbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data",{"title":784,"path":785,"stem":786},"Asset Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fasset-management","handbook\u002Fcompany\u002Fsecurity\u002Fasset-management",{"title":788,"path":789,"stem":790},"Business Continuity & Disaster Recovery Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity","handbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity",{"title":792,"path":793,"stem":794},"Hardware Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security","handbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security",{"title":796,"path":797,"stem":798},"Cryptography Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcryptography","handbook\u002Fcompany\u002Fsecurity\u002Fcryptography",{"title":800,"path":801,"stem":802},"Data Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fdata-management","handbook\u002Fcompany\u002Fsecurity\u002Fdata-management",{"title":804,"path":805,"stem":806},"Human Resources Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources","handbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources",{"title":808,"path":809,"stem":810},"Incident Response Plan","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fincident-response","handbook\u002Fcompany\u002Fsecurity\u002Fincident-response",{"title":812,"path":813,"stem":814},"Information Security Policy and Acceptable Use Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security",{"title":816,"path":817,"stem":818},"Information Security Roles and Responsibilities","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles",{"title":820,"path":821,"stem":822},"Operations Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Foperations-security","handbook\u002Fcompany\u002Fsecurity\u002Foperations-security",{"title":824,"path":825,"stem":826},"Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Frisk-management","handbook\u002Fcompany\u002Fsecurity\u002Frisk-management",{"title":828,"path":829,"stem":830},"Secure Development Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fsecure-development","handbook\u002Fcompany\u002Fsecurity\u002Fsecure-development",{"title":832,"path":833,"stem":834},"Third-Party Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management","handbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management",{"title":836,"path":837,"stem":838},"Strategy","\u002Fhandbook\u002Fcompany\u002Fstrategy","handbook\u002Fcompany\u002Fstrategy",{"title":840,"path":841,"stem":842},"Values","\u002Fhandbook\u002Fcompany\u002Fvalues","handbook\u002Fcompany\u002Fvalues",{"title":844,"group":845,"icon":846,"order":544,"path":847,"stem":848,"children":849},"Design","Engineering & Design Practices","i-lucide-pen-tool","\u002Fhandbook\u002Fdesign","handbook\u002Fdesign\u002Findex",[850,851,855,859,863,867,871],{"title":844,"path":847,"stem":848},{"title":852,"path":853,"stem":854},"Art Requests","\u002Fhandbook\u002Fdesign\u002Fart-requests","handbook\u002Fdesign\u002Fart-requests",{"title":856,"path":857,"stem":858},"Branding","\u002Fhandbook\u002Fdesign\u002Fbranding","handbook\u002Fdesign\u002Fbranding",{"title":860,"path":861,"stem":862},"Design Thinking","\u002Fhandbook\u002Fdesign\u002Fdesign-thinking","handbook\u002Fdesign\u002Fdesign-thinking",{"title":864,"path":865,"stem":866},"Process","\u002Fhandbook\u002Fdesign\u002Fprocess","handbook\u002Fdesign\u002Fprocess",{"title":868,"path":869,"stem":870},"Tools","\u002Fhandbook\u002Fdesign\u002Ftools","handbook\u002Fdesign\u002Ftools",{"title":872,"path":873,"stem":874},"Video","\u002Fhandbook\u002Fdesign\u002Fvideos","handbook\u002Fdesign\u002Fvideos",{"title":876,"group":845,"icon":877,"order":494,"path":878,"stem":879,"children":880},"Engineering","i-lucide-code-2","\u002Fhandbook\u002Fengineering","handbook\u002Fengineering\u002Findex",[881,882,886,904,908,912,916,939,979,983,1040,1044,1071,1075,1090],{"title":876,"path":878,"stem":879},{"title":883,"path":884,"stem":885},"Blueprints","\u002Fhandbook\u002Fengineering\u002Fblueprints","handbook\u002Fengineering\u002Fblueprints",{"title":887,"icon":888,"path":889,"stem":890,"children":891},"Contributing","i-lucide-git-pull-request","\u002Fhandbook\u002Fengineering\u002Fcontributing","handbook\u002Fengineering\u002Fcontributing\u002Findex",[892,893,896,900],{"title":887,"path":889,"stem":890},{"title":5,"path":894,"stem":895},"\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes","handbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes",{"title":897,"path":898,"stem":899},"FF Tables","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fff-tables","handbook\u002Fengineering\u002Fcontributing\u002Fff-tables",{"title":901,"path":902,"stem":903},"Team NPM Registry","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry","handbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry",{"title":905,"path":906,"stem":907},"Node-RED Dashboard","\u002Fhandbook\u002Fengineering\u002Fdashboard","handbook\u002Fengineering\u002Fdashboard",{"title":909,"path":910,"stem":911},"Dependency Updates","\u002Fhandbook\u002Fengineering\u002Fdependency-updates","handbook\u002Fengineering\u002Fdependency-updates",{"title":913,"path":914,"stem":915},"Feature Flags in PostHog","\u002Fhandbook\u002Fengineering\u002Ffeature-flags","handbook\u002Fengineering\u002Ffeature-flags",{"title":917,"icon":918,"path":919,"stem":920,"children":921},"Front End","i-lucide-layout-dashboard","\u002Fhandbook\u002Fengineering\u002Ffrontend","handbook\u002Fengineering\u002Ffrontend\u002Findex",[922,923,927,931,935],{"title":917,"path":919,"stem":920},{"title":924,"path":925,"stem":926},"Data Attributes","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes","handbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes",{"title":928,"path":929,"stem":930},"Front-End Layouts","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Flayouts","handbook\u002Fengineering\u002Ffrontend\u002Flayouts",{"title":932,"path":933,"stem":934},"Front-End Services","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fservices","handbook\u002Fengineering\u002Ffrontend\u002Fservices",{"title":936,"path":937,"stem":938},"Front-End Testing","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Ftesting","handbook\u002Fengineering\u002Ffrontend\u002Ftesting",{"title":940,"icon":941,"path":942,"stem":943,"children":944},"Platform Ops","i-lucide-server","\u002Fhandbook\u002Fengineering\u002Fops","handbook\u002Fengineering\u002Fops\u002Findex",[945,946,947,951,955,959,963,967,971,975],{"title":940,"path":942,"stem":943},{"title":5,"path":705,"stem":708},{"title":948,"path":949,"stem":950},"FlowFuse Dedicated","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated","handbook\u002Fengineering\u002Fops\u002Fdedicated",{"title":952,"path":953,"stem":954},"Deployment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdeployment","handbook\u002Fengineering\u002Fops\u002Fdeployment",{"title":956,"path":957,"stem":958},"Incident Response","\u002Fhandbook\u002Fengineering\u002Fops\u002Fincident-response","handbook\u002Fengineering\u002Fops\u002Fincident-response",{"title":960,"path":961,"stem":962},"Observability","\u002Fhandbook\u002Fengineering\u002Fops\u002Fobservability","handbook\u002Fengineering\u002Fops\u002Fobservability",{"title":964,"path":965,"stem":966},"Production Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction","handbook\u002Fengineering\u002Fops\u002Fproduction",{"title":968,"path":969,"stem":970},"Update Stacks on Production","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction-stack-update","handbook\u002Fengineering\u002Fops\u002Fproduction-stack-update",{"title":972,"path":973,"stem":974},"Self Hosted Assistant","\u002Fhandbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant","handbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant",{"title":976,"path":977,"stem":978},"Staging Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fstaging","handbook\u002Fengineering\u002Fops\u002Fstaging",{"title":980,"path":981,"stem":982},"Packaging Guidelines","\u002Fhandbook\u002Fengineering\u002Fpackaging","handbook\u002Fengineering\u002Fpackaging",{"title":984,"icon":985,"path":986,"stem":987,"children":988},"Product","i-lucide-package","\u002Fhandbook\u002Fengineering\u002Fproduct","handbook\u002Fengineering\u002Fproduct\u002Findex",[989,990,994,998,1002,1006,1010,1017,1021,1024,1028,1032,1036],{"title":984,"path":986,"stem":987},{"title":991,"path":992,"stem":993},"Feature Catalog","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeatures","handbook\u002Fengineering\u002Fproduct\u002Ffeatures",{"title":995,"path":996,"stem":997},"Feedback","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeedback","handbook\u002Fengineering\u002Fproduct\u002Ffeedback",{"title":999,"path":1000,"stem":1001},"Glossary","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fglossary","handbook\u002Fengineering\u002Fproduct\u002Fglossary",{"title":1003,"path":1004,"stem":1005},"Methodology","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmethodology","handbook\u002Fengineering\u002Fproduct\u002Fmethodology",{"title":1007,"path":1008,"stem":1009},"Metrics","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmetrics","handbook\u002Fengineering\u002Fproduct\u002Fmetrics",{"title":1011,"path":1012,"stem":1013,"children":1014,"icon":1016},"Personas","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpersonas","handbook\u002Fengineering\u002Fproduct\u002Fpersonas\u002Findex",[1015],{"title":1011,"path":1012,"stem":1013},"i-lucide-user-circle",{"title":1018,"path":1019,"stem":1020},"Pricing Principles","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpricing","handbook\u002Fengineering\u002Fproduct\u002Fpricing",{"title":761,"path":1022,"stem":1023},"\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fprinciples","handbook\u002Fengineering\u002Fproduct\u002Fprinciples",{"title":1025,"path":1026,"stem":1027},"Product Swimlanes","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes","handbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes",{"title":1029,"path":1030,"stem":1031},"Product Growth","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ftelemetry","handbook\u002Fengineering\u002Fproduct\u002Ftelemetry",{"title":1033,"path":1034,"stem":1035},"Versioning","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fversioning","handbook\u002Fengineering\u002Fproduct\u002Fversioning",{"title":1037,"path":1038,"stem":1039},"Market Segments","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fverticals","handbook\u002Fengineering\u002Fproduct\u002Fverticals",{"title":1041,"path":1042,"stem":1043},"Project Management","\u002Fhandbook\u002Fengineering\u002Fproject-management","handbook\u002Fengineering\u002Fproject-management",{"title":1045,"icon":1046,"path":1047,"stem":1048,"children":1049},"Releases","i-lucide-rocket","\u002Fhandbook\u002Fengineering\u002Freleases","handbook\u002Fengineering\u002Freleases\u002Findex",[1050,1051,1055,1059,1063,1067],{"title":1045,"path":1047,"stem":1048},{"title":1052,"path":1053,"stem":1054},"Dashboard 2.0 Releases","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdashboard-2","handbook\u002Fengineering\u002Freleases\u002Fdashboard-2",{"title":1056,"path":1057,"stem":1058},"Release Process - Digital Ocean","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdigital-ocean","handbook\u002Fengineering\u002Freleases\u002Fdigital-ocean",{"title":1060,"path":1061,"stem":1062},"Release Process","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fprocess","handbook\u002Fengineering\u002Freleases\u002Fprocess",{"title":1064,"path":1065,"stem":1066},"Release Blogs","\u002Fhandbook\u002Fengineering\u002Freleases\u002Frelease-blogs","handbook\u002Fengineering\u002Freleases\u002Frelease-blogs",{"title":1068,"path":1069,"stem":1070},"Changelog Posts","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fwriting-changelog","handbook\u002Fengineering\u002Freleases\u002Fwriting-changelog",{"title":1072,"path":1073,"stem":1074},"Security Policy","\u002Fhandbook\u002Fengineering\u002Fsecurity","handbook\u002Fengineering\u002Fsecurity",{"title":1076,"path":1077,"stem":1078,"children":1079,"icon":1089},"Support","\u002Fhandbook\u002Fengineering\u002Fsupport","handbook\u002Fengineering\u002Fsupport\u002Findex",[1080,1081,1085],{"title":1076,"path":1077,"stem":1078},{"title":1082,"path":1083,"stem":1084},"Triage Duty","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftriage","handbook\u002Fengineering\u002Fsupport\u002Ftriage",{"title":1086,"path":1087,"stem":1088},"Troubleshooting","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","handbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","i-lucide-life-buoy",{"title":868,"path":1091,"stem":1092},"\u002Fhandbook\u002Fengineering\u002Ftools","handbook\u002Fengineering\u002Ftools",{"title":1094,"group":1095,"icon":1096,"order":596,"path":1097,"stem":1098,"children":1099},"Marketing","Marketing department","i-lucide-megaphone","\u002Fhandbook\u002Fmarketing","handbook\u002Fmarketing\u002Findex",[1100,1101,1107,1111,1126,1145,1149,1153,1157,1161,1165,1169,1173],{"title":1094,"path":1097,"stem":1098},{"title":1102,"path":1103,"stem":1104,"children":1105},"Account-Based Marketing","\u002Fhandbook\u002Fmarketing\u002Faccount-based-marketing","handbook\u002Fmarketing\u002Faccount-based-marketing\u002Findex",[1106],{"title":1102,"path":1103,"stem":1104},{"title":1108,"path":1109,"stem":1110},"Brand Voice","\u002Fhandbook\u002Fmarketing\u002Fbrand-voice","handbook\u002Fmarketing\u002Fbrand-voice",{"title":1112,"icon":1113,"path":1114,"stem":1115,"children":1116},"Community","i-lucide-users-2","\u002Fhandbook\u002Fmarketing\u002Fcommunity","handbook\u002Fmarketing\u002Fcommunity\u002Findex",[1117,1118,1122],{"title":1112,"path":1114,"stem":1115},{"title":1119,"path":1120,"stem":1121},"Community Guidelines","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines","handbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines",{"title":1123,"path":1124,"stem":1125},"Forums And Support","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support","handbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support",{"title":1127,"icon":1128,"path":1129,"stem":1130,"children":1131,"order":414},"Content Strategy","i-lucide-file-text","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy","handbook\u002Fmarketing\u002Fcontent-strategy\u002Findex",[1132,1133,1137,1141],{"title":1127,"path":1129,"stem":1130,"order":414},{"title":1134,"path":1135,"stem":1136},"Blog","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog",{"title":1138,"path":1139,"stem":1140},"Customer Stories","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories",{"title":1142,"path":1143,"stem":1144},"Webinars","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars",{"title":1146,"path":1147,"stem":1148},"Events","\u002Fhandbook\u002Fmarketing\u002Fevents","handbook\u002Fmarketing\u002Fevents",{"title":1150,"path":1151,"stem":1152},"How we work","\u002Fhandbook\u002Fmarketing\u002Fhow-we-work","handbook\u002Fmarketing\u002Fhow-we-work",{"title":1154,"path":1155,"stem":1156},"Lead Activation","\u002Fhandbook\u002Fmarketing\u002Flead-activation","handbook\u002Fmarketing\u002Flead-activation",{"title":1158,"path":1159,"stem":1160},"Lead Generation","\u002Fhandbook\u002Fmarketing\u002Fleads","handbook\u002Fmarketing\u002Fleads",{"title":1162,"path":1163,"stem":1164},"Company Messaging","\u002Fhandbook\u002Fmarketing\u002Fmessaging","handbook\u002Fmarketing\u002Fmessaging",{"title":1166,"path":1167,"stem":1168},"Marketing Programs","\u002Fhandbook\u002Fmarketing\u002Fprograms","handbook\u002Fmarketing\u002Fprograms",{"title":1170,"path":1171,"stem":1172},"Social Media","\u002Fhandbook\u002Fmarketing\u002Fsocial-media","handbook\u002Fmarketing\u002Fsocial-media",{"title":1174,"path":1175,"stem":1176},"Website","\u002Fhandbook\u002Fmarketing\u002Fwebsite","handbook\u002Fmarketing\u002Fwebsite",{"title":1178,"group":719,"icon":1179,"order":433,"path":1180,"stem":1181,"children":1182},"Operations","i-lucide-settings-2","\u002Fhandbook\u002Foperations","handbook\u002Foperations\u002Findex",[1183,1184,1188,1192,1196,1219,1223,1227,1231,1235],{"title":1178,"path":1180,"stem":1181},{"title":1185,"path":1186,"stem":1187},"Accounting","\u002Fhandbook\u002Foperations\u002Faccounting","handbook\u002Foperations\u002Faccounting",{"title":1189,"path":1190,"stem":1191},"Accounts","\u002Fhandbook\u002Foperations\u002Faccounts","handbook\u002Foperations\u002Faccounts",{"title":1193,"path":1194,"stem":1195},"Billing","\u002Fhandbook\u002Foperations\u002Fbilling","handbook\u002Foperations\u002Fbilling",{"title":1197,"icon":1198,"path":1199,"stem":1200,"children":1201},"CEO Ops","i-lucide-briefcase","\u002Fhandbook\u002Foperations\u002Fceo-ops","handbook\u002Foperations\u002Fceo-ops\u002Findex",[1202,1203,1207,1211,1215],{"title":1197,"path":1199,"stem":1200},{"title":1204,"path":1205,"stem":1206},"Calendar Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management","handbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management",{"title":1208,"path":1209,"stem":1210},"Inbox Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Finbox-management","handbook\u002Foperations\u002Fceo-ops\u002Finbox-management",{"title":1212,"path":1213,"stem":1214},"Task Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftask-managment","handbook\u002Foperations\u002Fceo-ops\u002Ftask-managment",{"title":1216,"path":1217,"stem":1218},"Travel Booking","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking","handbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking",{"title":1220,"path":1221,"stem":1222},"Change Control","\u002Fhandbook\u002Foperations\u002Fchange","handbook\u002Foperations\u002Fchange",{"title":1224,"path":1225,"stem":1226},"Commission Payment","\u002Fhandbook\u002Foperations\u002Fcommission-payment","handbook\u002Foperations\u002Fcommission-payment",{"title":1228,"path":1229,"stem":1230},"Data at FlowFuse","\u002Fhandbook\u002Foperations\u002Fdata","handbook\u002Foperations\u002Fdata",{"title":1232,"path":1233,"stem":1234},"Signatures","\u002Fhandbook\u002Foperations\u002Fsignatures","handbook\u002Foperations\u002Fsignatures",{"title":1236,"path":1237,"stem":1238},"Vendors","\u002Fhandbook\u002Foperations\u002Fvendors","handbook\u002Foperations\u002Fvendors",{"title":1240,"group":1241,"icon":1242,"order":588,"path":1243,"stem":1244,"children":1245},"People Ops","Internal Operations","i-lucide-users","\u002Fhandbook\u002Fpeopleops","handbook\u002Fpeopleops\u002Findex",[1246,1247,1251,1255,1259,1263,1267,1290,1361,1365,1369,1373,1377,1381],{"title":1240,"path":1243,"stem":1244},{"title":1248,"path":1249,"stem":1250},"Coaching Plans","\u002Fhandbook\u002Fpeopleops\u002Fcoaching-plans","handbook\u002Fpeopleops\u002Fcoaching-plans",{"title":1252,"path":1253,"stem":1254},"Code of Conduct","\u002Fhandbook\u002Fpeopleops\u002Fcode-of-conduct","handbook\u002Fpeopleops\u002Fcode-of-conduct",{"title":1256,"path":1257,"stem":1258},"Compensation","\u002Fhandbook\u002Fpeopleops\u002Fcompensation","handbook\u002Fpeopleops\u002Fcompensation",{"title":1260,"path":1261,"stem":1262},"Compliance & Regulatory","\u002Fhandbook\u002Fpeopleops\u002Fcompliance","handbook\u002Fpeopleops\u002Fcompliance",{"title":1264,"path":1265,"stem":1266},"Expenses","\u002Fhandbook\u002Fpeopleops\u002Fexpenses","handbook\u002Fpeopleops\u002Fexpenses",{"title":1268,"icon":1269,"path":1270,"stem":1271,"children":1272},"Hiring","i-lucide-user-plus","\u002Fhandbook\u002Fpeopleops\u002Fhiring","handbook\u002Fpeopleops\u002Fhiring\u002Findex",[1273,1274,1278,1282,1286],{"title":1268,"path":1270,"stem":1271},{"title":1275,"path":1276,"stem":1277},"GitHub Navigation","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation","handbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation",{"title":1279,"path":1280,"stem":1281},"Working with Recruiters","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Frecruiters","handbook\u002Fpeopleops\u002Fhiring\u002Frecruiters",{"title":1283,"path":1284,"stem":1285},"Screening Call","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call","handbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call",{"title":1287,"path":1288,"stem":1289},"STAR Questions","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","handbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions",{"title":1291,"icon":1292,"path":1293,"stem":1294,"children":1295},"Job Descriptions","i-lucide-file-badge","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Findex",[1296,1297,1301,1305,1309,1313,1317,1321,1325,1329,1333,1337,1341,1345,1349,1353,1357],{"title":1291,"path":1293,"stem":1294},{"title":1298,"path":1299,"stem":1300},"Account Executive","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive",{"title":1302,"path":1303,"stem":1304},"CEO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo",{"title":1306,"path":1307,"stem":1308},"Chief of Staff","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff",{"title":1310,"path":1311,"stem":1312},"CTO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto",{"title":1314,"path":1315,"stem":1316},"Developer Relations Advocate","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fdeveloper-relations-advocate","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fdeveloper-relations-advocate",{"title":1318,"path":1319,"stem":1320},"Engineering Levels","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels",{"title":1322,"path":1323,"stem":1324},"Engineering Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager",{"title":1326,"path":1327,"stem":1328},"Fullstack Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer",{"title":1330,"path":1331,"stem":1332},"Fullstack Engineer (AI-Focused)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai",{"title":1334,"path":1335,"stem":1336},"Head of Marketing","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing",{"title":1338,"path":1339,"stem":1340},"Lead Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager",{"title":1342,"path":1343,"stem":1344},"Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager",{"title":1346,"path":1347,"stem":1348},"Product Marketer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer",{"title":1350,"path":1351,"stem":1352},"Sales Development Representative (SDR)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative",{"title":1354,"path":1355,"stem":1356},"Solutions Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer",{"title":1358,"path":1359,"stem":1360},"VP of Sales","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales",{"title":1362,"path":1363,"stem":1364},"Holiday & Leave","\u002Fhandbook\u002Fpeopleops\u002Fleave","handbook\u002Fpeopleops\u002Fleave",{"title":1366,"path":1367,"stem":1368},"PeopleOps Policies","\u002Fhandbook\u002Fpeopleops\u002Forganization","handbook\u002Fpeopleops\u002Forganization",{"title":1370,"path":1371,"stem":1372},"Performance review","\u002Fhandbook\u002Fpeopleops\u002Fperformance-review","handbook\u002Fpeopleops\u002Fperformance-review",{"title":1374,"path":1375,"stem":1376},"Summit","\u002Fhandbook\u002Fpeopleops\u002Fsummit","handbook\u002Fpeopleops\u002Fsummit",{"title":1378,"path":1379,"stem":1380},"Travel","\u002Fhandbook\u002Fpeopleops\u002Ftravel","handbook\u002Fpeopleops\u002Ftravel",{"title":1382,"path":1383,"stem":1384},"U.S. Compliance Policies","\u002Fhandbook\u002Fpeopleops\u002Fus-compliance","handbook\u002Fpeopleops\u002Fus-compliance",{"title":1386,"path":1387,"stem":1388,"group":712,"order":1389},"Recent Updates","\u002Fhandbook\u002Frecent-changes","handbook\u002Frecent-changes",0,{"title":1391,"group":1391,"icon":1392,"order":610,"path":1393,"stem":1394,"children":1395},"Commercial Organization","i-lucide-trending-up","\u002Fhandbook\u002Fsales","handbook\u002Fsales\u002Findex",[1396,1397,1404,1408,1412,1416,1420,1424,1428,1432,1451,1455,1459,1463,1470,1474,1478,1482,1486],{"title":1391,"path":1393,"stem":1394},{"title":1398,"path":1399,"stem":1400,"children":1401,"icon":1403},"Sales Compensation Plan","\u002Fhandbook\u002Fsales\u002Fcommission-plan","handbook\u002Fsales\u002Fcommission-plan\u002Findex",[1402],{"title":1398,"path":1399,"stem":1400},"i-lucide-dollar-sign",{"title":1405,"path":1406,"stem":1407},"Customer Success","\u002Fhandbook\u002Fsales\u002Fcustomer-success","handbook\u002Fsales\u002Fcustomer-success",{"title":1409,"path":1410,"stem":1411},"Self Hosted Dashboard v2 Multi User","\u002Fhandbook\u002Fsales\u002Fdashboard-v2","handbook\u002Fsales\u002Fdashboard-v2",{"title":1413,"path":1414,"stem":1415},"Edge Connectivity Sales Process","\u002Fhandbook\u002Fsales\u002Fedge-connect-process","handbook\u002Fsales\u002Fedge-connect-process",{"title":1417,"path":1418,"stem":1419},"Engagements & Pricing","\u002Fhandbook\u002Fsales\u002Fengagements","handbook\u002Fsales\u002Fengagements",{"title":1421,"path":1422,"stem":1423},"Forecast Review","\u002Fhandbook\u002Fsales\u002Fforecast-review","handbook\u002Fsales\u002Fforecast-review",{"title":1425,"path":1426,"stem":1427},"HubSpot","\u002Fhandbook\u002Fsales\u002Fhubspot","handbook\u002Fsales\u002Fhubspot",{"title":1429,"path":1430,"stem":1431},"Legal","\u002Fhandbook\u002Fsales\u002Flegal","handbook\u002Fsales\u002Flegal",{"title":1433,"icon":1434,"path":1435,"stem":1436,"children":1437},"Sales Meetings","i-lucide-calendar","\u002Fhandbook\u002Fsales\u002Fmeetings","handbook\u002Fsales\u002Fmeetings\u002Findex",[1438,1439,1443,1447],{"title":1433,"path":1435,"stem":1436},{"title":1440,"path":1441,"stem":1442},"Demo","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdemo","handbook\u002Fsales\u002Fmeetings\u002Fdemo",{"title":1444,"path":1445,"stem":1446},"Discovery Meeting","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdiscovery","handbook\u002Fsales\u002Fmeetings\u002Fdiscovery",{"title":1448,"path":1449,"stem":1450},"Proof of Concept","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fpoc","handbook\u002Fsales\u002Fmeetings\u002Fpoc",{"title":1452,"path":1453,"stem":1454},"Sales Team Operating Principles","\u002Fhandbook\u002Fsales\u002Foperating-principles","handbook\u002Fsales\u002Foperating-principles",{"title":1456,"path":1457,"stem":1458},"Partnerships","\u002Fhandbook\u002Fsales\u002Fpartnerships","handbook\u002Fsales\u002Fpartnerships",{"title":1460,"path":1461,"stem":1462},"Pricing Decks","\u002Fhandbook\u002Fsales\u002Fpricing-decks","handbook\u002Fsales\u002Fpricing-decks",{"title":1464,"path":1465,"stem":1466,"children":1467,"icon":1469},"Processes","\u002Fhandbook\u002Fsales\u002Fprocesses","handbook\u002Fsales\u002Fprocesses\u002Findex",[1468],{"title":1464,"path":1465,"stem":1466},"i-lucide-workflow",{"title":1471,"path":1472,"stem":1473},"Professional Services","\u002Fhandbook\u002Fsales\u002Fprofessional-services","handbook\u002Fsales\u002Fprofessional-services",{"title":1475,"path":1476,"stem":1477},"Sales Regions","\u002Fhandbook\u002Fsales\u002Fregions","handbook\u002Fsales\u002Fregions",{"title":1479,"path":1480,"stem":1481},"Sales Deck","\u002Fhandbook\u002Fsales\u002Fsales-deck","handbook\u002Fsales\u002Fsales-deck",{"title":1483,"path":1484,"stem":1485},"Sales","\u002Fhandbook\u002Fsales\u002Fsales-team","handbook\u002Fsales\u002Fsales-team",{"title":1487,"path":1488,"stem":1489},"Subscription Agreement 1.5","\u002Fhandbook\u002Fsales\u002Fsubscription-agreement-1.5","handbook\u002Fsales\u002Fsubscription-agreement-1.5",1785802117483]