[{"data":1,"prerenderedAt":1522},["ShallowReactive",2],{"handbook-\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes\u002F":3,"handbook-nav":709},{"id":4,"title":5,"body":6,"description":16,"extension":702,"meta":703,"navigation":704,"path":705,"seo":706,"stem":707,"__hash__":708},"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},"handbook\u002Fengineering\u002Fops\u002Fcertified-nodes","HxFszmLMmAX7I8fLdOj3rbYe4gXvZD4MYCUOzZVJ87Y",[710],{"title":711,"path":712,"stem":713,"children":714},"Handbook","\u002Fhandbook","handbook",[715,717,842,874,1092,1180,1242,1383,1388],{"title":711,"path":712,"stem":716},"handbook\u002Findex",{"title":718,"group":718,"icon":719,"order":414,"path":720,"stem":721,"children":722},"Company","i-lucide-building-2","\u002Fhandbook\u002Fcompany","handbook\u002Fcompany\u002Findex",[723,724,728,732,736,755,759,763,767,834,838],{"title":718,"path":720,"stem":721},{"title":725,"path":726,"stem":727},"Board & Investors","\u002Fhandbook\u002Fcompany\u002Fboard","handbook\u002Fcompany\u002Fboard",{"title":729,"path":730,"stem":731},"Communications","\u002Fhandbook\u002Fcompany\u002Fcommunication","handbook\u002Fcompany\u002Fcommunication",{"title":733,"path":734,"stem":735},"Decision making and project management","\u002Fhandbook\u002Fcompany\u002Fdecisions","handbook\u002Fcompany\u002Fdecisions",{"title":737,"icon":738,"path":739,"stem":740,"children":741},"Guides","i-lucide-book-open","\u002Fhandbook\u002Fcompany\u002Fguides","handbook\u002Fcompany\u002Fguides\u002Findex",[742,743,747,751],{"title":737,"path":739,"stem":740},{"title":744,"path":745,"stem":746},"Editing the Handbook","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgit","handbook\u002Fcompany\u002Fguides\u002Fgit",{"title":748,"path":749,"stem":750},"Google Workspace","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgworkspace","handbook\u002Fcompany\u002Fguides\u002Fgworkspace",{"title":752,"path":753,"stem":754},"Markdown Guide","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fmarkdown","handbook\u002Fcompany\u002Fguides\u002Fmarkdown",{"title":756,"path":757,"stem":758},"Organizational Structure","\u002Fhandbook\u002Fcompany\u002Forganizational-structure","handbook\u002Fcompany\u002Forganizational-structure",{"title":760,"path":761,"stem":762},"Principles","\u002Fhandbook\u002Fcompany\u002Fprinciples","handbook\u002Fcompany\u002Fprinciples",{"title":764,"path":765,"stem":766},"Remote Work","\u002Fhandbook\u002Fcompany\u002Fremote","handbook\u002Fcompany\u002Fremote",{"title":768,"icon":769,"path":770,"stem":771,"children":772},"Security","i-lucide-shield","\u002Fhandbook\u002Fcompany\u002Fsecurity","handbook\u002Fcompany\u002Fsecurity\u002Findex",[773,774,778,782,786,790,794,798,802,806,810,814,818,822,826,830],{"title":768,"path":770,"stem":771},{"title":775,"path":776,"stem":777},"Access Control Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Faccess-control","handbook\u002Fcompany\u002Fsecurity\u002Faccess-control",{"title":779,"path":780,"stem":781},"AI Development and Customer Data Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data","handbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data",{"title":783,"path":784,"stem":785},"Asset Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fasset-management","handbook\u002Fcompany\u002Fsecurity\u002Fasset-management",{"title":787,"path":788,"stem":789},"Business Continuity & Disaster Recovery Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity","handbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity",{"title":791,"path":792,"stem":793},"Hardware Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security","handbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security",{"title":795,"path":796,"stem":797},"Cryptography Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcryptography","handbook\u002Fcompany\u002Fsecurity\u002Fcryptography",{"title":799,"path":800,"stem":801},"Data Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fdata-management","handbook\u002Fcompany\u002Fsecurity\u002Fdata-management",{"title":803,"path":804,"stem":805},"Human Resources Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources","handbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources",{"title":807,"path":808,"stem":809},"Incident Response Plan","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fincident-response","handbook\u002Fcompany\u002Fsecurity\u002Fincident-response",{"title":811,"path":812,"stem":813},"Information Security Policy and Acceptable Use Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security",{"title":815,"path":816,"stem":817},"Information Security Roles and Responsibilities","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles",{"title":819,"path":820,"stem":821},"Operations Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Foperations-security","handbook\u002Fcompany\u002Fsecurity\u002Foperations-security",{"title":823,"path":824,"stem":825},"Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Frisk-management","handbook\u002Fcompany\u002Fsecurity\u002Frisk-management",{"title":827,"path":828,"stem":829},"Secure Development Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fsecure-development","handbook\u002Fcompany\u002Fsecurity\u002Fsecure-development",{"title":831,"path":832,"stem":833},"Third-Party Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management","handbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management",{"title":835,"path":836,"stem":837},"Strategy","\u002Fhandbook\u002Fcompany\u002Fstrategy","handbook\u002Fcompany\u002Fstrategy",{"title":839,"path":840,"stem":841},"Values","\u002Fhandbook\u002Fcompany\u002Fvalues","handbook\u002Fcompany\u002Fvalues",{"title":843,"group":844,"icon":845,"order":544,"path":846,"stem":847,"children":848},"Design","Engineering & Design Practices","i-lucide-pen-tool","\u002Fhandbook\u002Fdesign","handbook\u002Fdesign\u002Findex",[849,850,854,858,862,866,870],{"title":843,"path":846,"stem":847},{"title":851,"path":852,"stem":853},"Art Requests","\u002Fhandbook\u002Fdesign\u002Fart-requests","handbook\u002Fdesign\u002Fart-requests",{"title":855,"path":856,"stem":857},"Branding","\u002Fhandbook\u002Fdesign\u002Fbranding","handbook\u002Fdesign\u002Fbranding",{"title":859,"path":860,"stem":861},"Design Thinking","\u002Fhandbook\u002Fdesign\u002Fdesign-thinking","handbook\u002Fdesign\u002Fdesign-thinking",{"title":863,"path":864,"stem":865},"Process","\u002Fhandbook\u002Fdesign\u002Fprocess","handbook\u002Fdesign\u002Fprocess",{"title":867,"path":868,"stem":869},"Tools","\u002Fhandbook\u002Fdesign\u002Ftools","handbook\u002Fdesign\u002Ftools",{"title":871,"path":872,"stem":873},"Video","\u002Fhandbook\u002Fdesign\u002Fvideos","handbook\u002Fdesign\u002Fvideos",{"title":875,"group":844,"icon":876,"order":494,"path":877,"stem":878,"children":879},"Engineering","i-lucide-code-2","\u002Fhandbook\u002Fengineering","handbook\u002Fengineering\u002Findex",[880,881,885,903,907,911,915,938,978,982,1039,1043,1070,1074,1089],{"title":875,"path":877,"stem":878},{"title":882,"path":883,"stem":884},"Blueprints","\u002Fhandbook\u002Fengineering\u002Fblueprints","handbook\u002Fengineering\u002Fblueprints",{"title":886,"icon":887,"path":888,"stem":889,"children":890},"Contributing","i-lucide-git-pull-request","\u002Fhandbook\u002Fengineering\u002Fcontributing","handbook\u002Fengineering\u002Fcontributing\u002Findex",[891,892,895,899],{"title":886,"path":888,"stem":889},{"title":5,"path":893,"stem":894},"\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes","handbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes",{"title":896,"path":897,"stem":898},"FF Tables","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fff-tables","handbook\u002Fengineering\u002Fcontributing\u002Fff-tables",{"title":900,"path":901,"stem":902},"Team NPM Registry","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry","handbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry",{"title":904,"path":905,"stem":906},"Node-RED Dashboard","\u002Fhandbook\u002Fengineering\u002Fdashboard","handbook\u002Fengineering\u002Fdashboard",{"title":908,"path":909,"stem":910},"Dependency Updates","\u002Fhandbook\u002Fengineering\u002Fdependency-updates","handbook\u002Fengineering\u002Fdependency-updates",{"title":912,"path":913,"stem":914},"Feature Flags in PostHog","\u002Fhandbook\u002Fengineering\u002Ffeature-flags","handbook\u002Fengineering\u002Ffeature-flags",{"title":916,"icon":917,"path":918,"stem":919,"children":920},"Front End","i-lucide-layout-dashboard","\u002Fhandbook\u002Fengineering\u002Ffrontend","handbook\u002Fengineering\u002Ffrontend\u002Findex",[921,922,926,930,934],{"title":916,"path":918,"stem":919},{"title":923,"path":924,"stem":925},"Data Attributes","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes","handbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes",{"title":927,"path":928,"stem":929},"Front-End Layouts","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Flayouts","handbook\u002Fengineering\u002Ffrontend\u002Flayouts",{"title":931,"path":932,"stem":933},"Front-End Services","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fservices","handbook\u002Fengineering\u002Ffrontend\u002Fservices",{"title":935,"path":936,"stem":937},"Front-End Testing","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Ftesting","handbook\u002Fengineering\u002Ffrontend\u002Ftesting",{"title":939,"icon":940,"path":941,"stem":942,"children":943},"Platform Ops","i-lucide-server","\u002Fhandbook\u002Fengineering\u002Fops","handbook\u002Fengineering\u002Fops\u002Findex",[944,945,946,950,954,958,962,966,970,974],{"title":939,"path":941,"stem":942},{"title":5,"path":705,"stem":707},{"title":947,"path":948,"stem":949},"FlowFuse Dedicated","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated","handbook\u002Fengineering\u002Fops\u002Fdedicated",{"title":951,"path":952,"stem":953},"Deployment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdeployment","handbook\u002Fengineering\u002Fops\u002Fdeployment",{"title":955,"path":956,"stem":957},"Incident Response","\u002Fhandbook\u002Fengineering\u002Fops\u002Fincident-response","handbook\u002Fengineering\u002Fops\u002Fincident-response",{"title":959,"path":960,"stem":961},"Observability","\u002Fhandbook\u002Fengineering\u002Fops\u002Fobservability","handbook\u002Fengineering\u002Fops\u002Fobservability",{"title":963,"path":964,"stem":965},"Production Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction","handbook\u002Fengineering\u002Fops\u002Fproduction",{"title":967,"path":968,"stem":969},"Update Stacks on Production","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction-stack-update","handbook\u002Fengineering\u002Fops\u002Fproduction-stack-update",{"title":971,"path":972,"stem":973},"Self Hosted Assistant","\u002Fhandbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant","handbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant",{"title":975,"path":976,"stem":977},"Staging Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fstaging","handbook\u002Fengineering\u002Fops\u002Fstaging",{"title":979,"path":980,"stem":981},"Packaging Guidelines","\u002Fhandbook\u002Fengineering\u002Fpackaging","handbook\u002Fengineering\u002Fpackaging",{"title":983,"icon":984,"path":985,"stem":986,"children":987},"Product","i-lucide-package","\u002Fhandbook\u002Fengineering\u002Fproduct","handbook\u002Fengineering\u002Fproduct\u002Findex",[988,989,993,997,1001,1005,1009,1016,1020,1023,1027,1031,1035],{"title":983,"path":985,"stem":986},{"title":990,"path":991,"stem":992},"Feature Catalog","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeatures","handbook\u002Fengineering\u002Fproduct\u002Ffeatures",{"title":994,"path":995,"stem":996},"Feedback","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeedback","handbook\u002Fengineering\u002Fproduct\u002Ffeedback",{"title":998,"path":999,"stem":1000},"Glossary","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fglossary","handbook\u002Fengineering\u002Fproduct\u002Fglossary",{"title":1002,"path":1003,"stem":1004},"Methodology","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmethodology","handbook\u002Fengineering\u002Fproduct\u002Fmethodology",{"title":1006,"path":1007,"stem":1008},"Metrics","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmetrics","handbook\u002Fengineering\u002Fproduct\u002Fmetrics",{"title":1010,"path":1011,"stem":1012,"children":1013,"icon":1015},"Personas","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpersonas","handbook\u002Fengineering\u002Fproduct\u002Fpersonas\u002Findex",[1014],{"title":1010,"path":1011,"stem":1012},"i-lucide-user-circle",{"title":1017,"path":1018,"stem":1019},"Pricing Principles","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpricing","handbook\u002Fengineering\u002Fproduct\u002Fpricing",{"title":760,"path":1021,"stem":1022},"\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fprinciples","handbook\u002Fengineering\u002Fproduct\u002Fprinciples",{"title":1024,"path":1025,"stem":1026},"Product Swimlanes","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes","handbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes",{"title":1028,"path":1029,"stem":1030},"Product Growth","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ftelemetry","handbook\u002Fengineering\u002Fproduct\u002Ftelemetry",{"title":1032,"path":1033,"stem":1034},"Versioning","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fversioning","handbook\u002Fengineering\u002Fproduct\u002Fversioning",{"title":1036,"path":1037,"stem":1038},"Market Segments","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fverticals","handbook\u002Fengineering\u002Fproduct\u002Fverticals",{"title":1040,"path":1041,"stem":1042},"Project Management","\u002Fhandbook\u002Fengineering\u002Fproject-management","handbook\u002Fengineering\u002Fproject-management",{"title":1044,"icon":1045,"path":1046,"stem":1047,"children":1048},"Releases","i-lucide-rocket","\u002Fhandbook\u002Fengineering\u002Freleases","handbook\u002Fengineering\u002Freleases\u002Findex",[1049,1050,1054,1058,1062,1066],{"title":1044,"path":1046,"stem":1047},{"title":1051,"path":1052,"stem":1053},"Dashboard 2.0 Releases","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdashboard-2","handbook\u002Fengineering\u002Freleases\u002Fdashboard-2",{"title":1055,"path":1056,"stem":1057},"Release Process - Digital Ocean","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdigital-ocean","handbook\u002Fengineering\u002Freleases\u002Fdigital-ocean",{"title":1059,"path":1060,"stem":1061},"Release Process","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fprocess","handbook\u002Fengineering\u002Freleases\u002Fprocess",{"title":1063,"path":1064,"stem":1065},"Release Blogs","\u002Fhandbook\u002Fengineering\u002Freleases\u002Frelease-blogs","handbook\u002Fengineering\u002Freleases\u002Frelease-blogs",{"title":1067,"path":1068,"stem":1069},"Changelog Posts","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fwriting-changelog","handbook\u002Fengineering\u002Freleases\u002Fwriting-changelog",{"title":1071,"path":1072,"stem":1073},"Security Policy","\u002Fhandbook\u002Fengineering\u002Fsecurity","handbook\u002Fengineering\u002Fsecurity",{"title":1075,"path":1076,"stem":1077,"children":1078,"icon":1088},"Support","\u002Fhandbook\u002Fengineering\u002Fsupport","handbook\u002Fengineering\u002Fsupport\u002Findex",[1079,1080,1084],{"title":1075,"path":1076,"stem":1077},{"title":1081,"path":1082,"stem":1083},"Triage Duty","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftriage","handbook\u002Fengineering\u002Fsupport\u002Ftriage",{"title":1085,"path":1086,"stem":1087},"Troubleshooting","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","handbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","i-lucide-life-buoy",{"title":867,"path":1090,"stem":1091},"\u002Fhandbook\u002Fengineering\u002Ftools","handbook\u002Fengineering\u002Ftools",{"title":1093,"group":1094,"icon":1095,"order":596,"path":1096,"stem":1097,"children":1098},"Marketing","Marketing department","i-lucide-megaphone","\u002Fhandbook\u002Fmarketing","handbook\u002Fmarketing\u002Findex",[1099,1100,1106,1110,1125,1144,1148,1152,1156,1160,1164,1168,1172,1176],{"title":1093,"path":1096,"stem":1097},{"title":1101,"path":1102,"stem":1103,"children":1104},"Account-Based Marketing","\u002Fhandbook\u002Fmarketing\u002Faccount-based-marketing","handbook\u002Fmarketing\u002Faccount-based-marketing\u002Findex",[1105],{"title":1101,"path":1102,"stem":1103},{"title":1107,"path":1108,"stem":1109},"Brand Voice","\u002Fhandbook\u002Fmarketing\u002Fbrand-voice","handbook\u002Fmarketing\u002Fbrand-voice",{"title":1111,"icon":1112,"path":1113,"stem":1114,"children":1115},"Community","i-lucide-users-2","\u002Fhandbook\u002Fmarketing\u002Fcommunity","handbook\u002Fmarketing\u002Fcommunity\u002Findex",[1116,1117,1121],{"title":1111,"path":1113,"stem":1114},{"title":1118,"path":1119,"stem":1120},"Community Guidelines","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines","handbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines",{"title":1122,"path":1123,"stem":1124},"Forums And Support","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support","handbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support",{"title":1126,"icon":1127,"path":1128,"stem":1129,"children":1130,"order":414},"Content Strategy","i-lucide-file-text","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy","handbook\u002Fmarketing\u002Fcontent-strategy\u002Findex",[1131,1132,1136,1140],{"title":1126,"path":1128,"stem":1129,"order":414},{"title":1133,"path":1134,"stem":1135},"Blog","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog",{"title":1137,"path":1138,"stem":1139},"Customer Stories","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories",{"title":1141,"path":1142,"stem":1143},"Webinars","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars",{"title":1145,"path":1146,"stem":1147},"Events","\u002Fhandbook\u002Fmarketing\u002Fevents","handbook\u002Fmarketing\u002Fevents",{"title":1149,"path":1150,"stem":1151},"How we work","\u002Fhandbook\u002Fmarketing\u002Fhow-we-work","handbook\u002Fmarketing\u002Fhow-we-work",{"title":1153,"path":1154,"stem":1155},"Lead Activation","\u002Fhandbook\u002Fmarketing\u002Flead-activation","handbook\u002Fmarketing\u002Flead-activation",{"title":1157,"path":1158,"stem":1159},"Lead Generation","\u002Fhandbook\u002Fmarketing\u002Fleads","handbook\u002Fmarketing\u002Fleads",{"title":1161,"path":1162,"stem":1163},"Company Messaging","\u002Fhandbook\u002Fmarketing\u002Fmessaging","handbook\u002Fmarketing\u002Fmessaging",{"title":1165,"path":1166,"stem":1167},"Marketing Programs","\u002Fhandbook\u002Fmarketing\u002Fprograms","handbook\u002Fmarketing\u002Fprograms",{"title":1169,"path":1170,"stem":1171},"Sales Development Representative (SDR)","\u002Fhandbook\u002Fmarketing\u002Fsdr","handbook\u002Fmarketing\u002Fsdr",{"title":1173,"path":1174,"stem":1175},"Social Media","\u002Fhandbook\u002Fmarketing\u002Fsocial-media","handbook\u002Fmarketing\u002Fsocial-media",{"title":1177,"path":1178,"stem":1179},"Website","\u002Fhandbook\u002Fmarketing\u002Fwebsite","handbook\u002Fmarketing\u002Fwebsite",{"title":1181,"group":718,"icon":1182,"order":433,"path":1183,"stem":1184,"children":1185},"Operations","i-lucide-settings-2","\u002Fhandbook\u002Foperations","handbook\u002Foperations\u002Findex",[1186,1187,1191,1195,1199,1222,1226,1230,1234,1238],{"title":1181,"path":1183,"stem":1184},{"title":1188,"path":1189,"stem":1190},"Accounting","\u002Fhandbook\u002Foperations\u002Faccounting","handbook\u002Foperations\u002Faccounting",{"title":1192,"path":1193,"stem":1194},"Accounts","\u002Fhandbook\u002Foperations\u002Faccounts","handbook\u002Foperations\u002Faccounts",{"title":1196,"path":1197,"stem":1198},"Billing","\u002Fhandbook\u002Foperations\u002Fbilling","handbook\u002Foperations\u002Fbilling",{"title":1200,"icon":1201,"path":1202,"stem":1203,"children":1204},"CEO Ops","i-lucide-briefcase","\u002Fhandbook\u002Foperations\u002Fceo-ops","handbook\u002Foperations\u002Fceo-ops\u002Findex",[1205,1206,1210,1214,1218],{"title":1200,"path":1202,"stem":1203},{"title":1207,"path":1208,"stem":1209},"Calendar Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management","handbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management",{"title":1211,"path":1212,"stem":1213},"Inbox Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Finbox-management","handbook\u002Foperations\u002Fceo-ops\u002Finbox-management",{"title":1215,"path":1216,"stem":1217},"Task Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftask-managment","handbook\u002Foperations\u002Fceo-ops\u002Ftask-managment",{"title":1219,"path":1220,"stem":1221},"Travel Booking","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking","handbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking",{"title":1223,"path":1224,"stem":1225},"Change Control","\u002Fhandbook\u002Foperations\u002Fchange","handbook\u002Foperations\u002Fchange",{"title":1227,"path":1228,"stem":1229},"Commission Payment","\u002Fhandbook\u002Foperations\u002Fcommission-payment","handbook\u002Foperations\u002Fcommission-payment",{"title":1231,"path":1232,"stem":1233},"Data at FlowFuse","\u002Fhandbook\u002Foperations\u002Fdata","handbook\u002Foperations\u002Fdata",{"title":1235,"path":1236,"stem":1237},"Signatures","\u002Fhandbook\u002Foperations\u002Fsignatures","handbook\u002Foperations\u002Fsignatures",{"title":1239,"path":1240,"stem":1241},"Vendors","\u002Fhandbook\u002Foperations\u002Fvendors","handbook\u002Foperations\u002Fvendors",{"title":1243,"group":1244,"icon":1245,"order":588,"path":1246,"stem":1247,"children":1248},"People Ops","Internal Operations","i-lucide-users","\u002Fhandbook\u002Fpeopleops","handbook\u002Fpeopleops\u002Findex",[1249,1250,1254,1258,1262,1266,1270,1293,1359,1363,1367,1371,1375,1379],{"title":1243,"path":1246,"stem":1247},{"title":1251,"path":1252,"stem":1253},"Coaching Plans","\u002Fhandbook\u002Fpeopleops\u002Fcoaching-plans","handbook\u002Fpeopleops\u002Fcoaching-plans",{"title":1255,"path":1256,"stem":1257},"Code of Conduct","\u002Fhandbook\u002Fpeopleops\u002Fcode-of-conduct","handbook\u002Fpeopleops\u002Fcode-of-conduct",{"title":1259,"path":1260,"stem":1261},"Compensation","\u002Fhandbook\u002Fpeopleops\u002Fcompensation","handbook\u002Fpeopleops\u002Fcompensation",{"title":1263,"path":1264,"stem":1265},"Compliance & Regulatory","\u002Fhandbook\u002Fpeopleops\u002Fcompliance","handbook\u002Fpeopleops\u002Fcompliance",{"title":1267,"path":1268,"stem":1269},"Expenses","\u002Fhandbook\u002Fpeopleops\u002Fexpenses","handbook\u002Fpeopleops\u002Fexpenses",{"title":1271,"icon":1272,"path":1273,"stem":1274,"children":1275},"Hiring","i-lucide-user-plus","\u002Fhandbook\u002Fpeopleops\u002Fhiring","handbook\u002Fpeopleops\u002Fhiring\u002Findex",[1276,1277,1281,1285,1289],{"title":1271,"path":1273,"stem":1274},{"title":1278,"path":1279,"stem":1280},"GitHub Navigation","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation","handbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation",{"title":1282,"path":1283,"stem":1284},"Working with Recruiters","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Frecruiters","handbook\u002Fpeopleops\u002Fhiring\u002Frecruiters",{"title":1286,"path":1287,"stem":1288},"Screening Call","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call","handbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call",{"title":1290,"path":1291,"stem":1292},"STAR Questions","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","handbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions",{"title":1294,"icon":1295,"path":1296,"stem":1297,"children":1298},"Job Descriptions","i-lucide-file-badge","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Findex",[1299,1300,1304,1308,1312,1316,1320,1324,1328,1332,1336,1340,1344,1348,1351,1355],{"title":1294,"path":1296,"stem":1297},{"title":1301,"path":1302,"stem":1303},"Account Executive","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive",{"title":1305,"path":1306,"stem":1307},"CEO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo",{"title":1309,"path":1310,"stem":1311},"Chief of Staff","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff",{"title":1313,"path":1314,"stem":1315},"CTO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto",{"title":1317,"path":1318,"stem":1319},"Engineering Levels","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels",{"title":1321,"path":1322,"stem":1323},"Engineering Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager",{"title":1325,"path":1326,"stem":1327},"Fullstack Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer",{"title":1329,"path":1330,"stem":1331},"Fullstack Engineer (AI-Focused)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai",{"title":1333,"path":1334,"stem":1335},"Head of Marketing","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing",{"title":1337,"path":1338,"stem":1339},"Lead Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager",{"title":1341,"path":1342,"stem":1343},"Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager",{"title":1345,"path":1346,"stem":1347},"Product Marketer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer",{"title":1169,"path":1349,"stem":1350},"\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative",{"title":1352,"path":1353,"stem":1354},"Solutions Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer",{"title":1356,"path":1357,"stem":1358},"VP of Sales","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales",{"title":1360,"path":1361,"stem":1362},"Holiday & Leave","\u002Fhandbook\u002Fpeopleops\u002Fleave","handbook\u002Fpeopleops\u002Fleave",{"title":1364,"path":1365,"stem":1366},"PeopleOps Policies","\u002Fhandbook\u002Fpeopleops\u002Forganization","handbook\u002Fpeopleops\u002Forganization",{"title":1368,"path":1369,"stem":1370},"Performance review","\u002Fhandbook\u002Fpeopleops\u002Fperformance-review","handbook\u002Fpeopleops\u002Fperformance-review",{"title":1372,"path":1373,"stem":1374},"Summit","\u002Fhandbook\u002Fpeopleops\u002Fsummit","handbook\u002Fpeopleops\u002Fsummit",{"title":1376,"path":1377,"stem":1378},"Travel","\u002Fhandbook\u002Fpeopleops\u002Ftravel","handbook\u002Fpeopleops\u002Ftravel",{"title":1380,"path":1381,"stem":1382},"U.S. Compliance Policies","\u002Fhandbook\u002Fpeopleops\u002Fus-compliance","handbook\u002Fpeopleops\u002Fus-compliance",{"title":1384,"path":1385,"stem":1386,"group":711,"order":1387},"Recent Updates","\u002Fhandbook\u002Frecent-changes","handbook\u002Frecent-changes",0,{"title":1389,"group":1389,"icon":1390,"order":610,"path":1391,"stem":1392,"children":1393},"Commercial Organization","i-lucide-trending-up","\u002Fhandbook\u002Fsales","handbook\u002Fsales\u002Findex",[1394,1395,1403,1408,1412,1417,1422,1427,1432,1437,1442,1462,1467,1471,1475,1480,1488,1492,1496,1501,1505,1509,1514,1518],{"title":1389,"path":1391,"stem":1392},{"title":1396,"path":1397,"stem":1398,"children":1399,"order":1401,"icon":1402},"Sales Compensation Plan","\u002Fhandbook\u002Fsales\u002Fcommission-plan","handbook\u002Fsales\u002Fcommission-plan\u002Findex",[1400],{"title":1396,"path":1397,"stem":1398},22,"i-lucide-dollar-sign",{"title":1404,"path":1405,"stem":1406,"order":1407},"Customer Journey Alignment","\u002Fhandbook\u002Fsales\u002Fcustomer-journey","handbook\u002Fsales\u002Fcustomer-journey",10,{"title":1409,"path":1410,"stem":1411,"order":494},"Customer Success","\u002Fhandbook\u002Fsales\u002Fcustomer-success","handbook\u002Fsales\u002Fcustomer-success",{"title":1413,"path":1414,"stem":1415,"order":1416},"Self Hosted Dashboard v2 Multi User","\u002Fhandbook\u002Fsales\u002Fdashboard-v2","handbook\u002Fsales\u002Fdashboard-v2",20,{"title":1418,"path":1419,"stem":1420,"order":1421},"Edge Connectivity Sales Process","\u002Fhandbook\u002Fsales\u002Fedge-connect-process","handbook\u002Fsales\u002Fedge-connect-process",19,{"title":1423,"path":1424,"stem":1425,"order":1426},"Engagements & Pricing","\u002Fhandbook\u002Fsales\u002Fengagements","handbook\u002Fsales\u002Fengagements",14,{"title":1428,"path":1429,"stem":1430,"order":1431},"Forecast Review","\u002Fhandbook\u002Fsales\u002Fforecast-review","handbook\u002Fsales\u002Fforecast-review",15,{"title":1433,"path":1434,"stem":1435,"order":1436},"HubSpot","\u002Fhandbook\u002Fsales\u002Fhubspot","handbook\u002Fsales\u002Fhubspot",16,{"title":1438,"path":1439,"stem":1440,"order":1441},"Legal","\u002Fhandbook\u002Fsales\u002Flegal","handbook\u002Fsales\u002Flegal",21,{"title":1443,"order":1444,"icon":1445,"path":1446,"stem":1447,"children":1448},"Sales Meetings",13,"i-lucide-calendar","\u002Fhandbook\u002Fsales\u002Fmeetings","handbook\u002Fsales\u002Fmeetings\u002Findex",[1449,1450,1454,1458],{"title":1443,"path":1446,"stem":1447},{"title":1451,"path":1452,"stem":1453},"Demo","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdemo","handbook\u002Fsales\u002Fmeetings\u002Fdemo",{"title":1455,"path":1456,"stem":1457},"Discovery Meeting","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdiscovery","handbook\u002Fsales\u002Fmeetings\u002Fdiscovery",{"title":1459,"path":1460,"stem":1461},"Proof of Concept","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fpoc","handbook\u002Fsales\u002Fmeetings\u002Fpoc",{"title":1463,"path":1464,"stem":1465,"order":1466},"Onboarding & Development","\u002Fhandbook\u002Fsales\u002Fonboarding","handbook\u002Fsales\u002Fonboarding",11,{"title":1468,"path":1469,"stem":1470,"order":596},"Commercial Team Operating Principles","\u002Fhandbook\u002Fsales\u002Foperating-principles","handbook\u002Fsales\u002Foperating-principles",{"title":1472,"path":1473,"stem":1474,"order":588},"Partnerships","\u002Fhandbook\u002Fsales\u002Fpartnerships","handbook\u002Fsales\u002Fpartnerships",{"title":1476,"path":1477,"stem":1478,"order":1479},"Pricing Decks","\u002Fhandbook\u002Fsales\u002Fpricing-decks","handbook\u002Fsales\u002Fpricing-decks",18,{"title":1481,"path":1482,"stem":1483,"children":1484,"order":1486,"icon":1487},"Processes","\u002Fhandbook\u002Fsales\u002Fprocesses","handbook\u002Fsales\u002Fprocesses\u002Findex",[1485],{"title":1481,"path":1482,"stem":1483},12,"i-lucide-workflow",{"title":1489,"path":1490,"stem":1491,"order":544},"Professional Services","\u002Fhandbook\u002Fsales\u002Fprofessional-services","handbook\u002Fsales\u002Fprofessional-services",{"title":1493,"path":1494,"stem":1495,"order":610},"Sales Regions","\u002Fhandbook\u002Fsales\u002Fregions","handbook\u002Fsales\u002Fregions",{"title":1497,"path":1498,"stem":1499,"order":1500},"Sales Deck","\u002Fhandbook\u002Fsales\u002Fsales-deck","handbook\u002Fsales\u002Fsales-deck",17,{"title":1502,"path":1503,"stem":1504,"order":414},"Sales","\u002Fhandbook\u002Fsales\u002Fsales-team","handbook\u002Fsales\u002Fsales-team",{"title":1506,"path":1507,"stem":1508,"order":433},"Solution Engineering","\u002Fhandbook\u002Fsales\u002Fsolution-engineering","handbook\u002Fsales\u002Fsolution-engineering",{"title":1510,"path":1511,"stem":1512,"order":1513},"Subscription Agreement 1.5","\u002Fhandbook\u002Fsales\u002Fsubscription-agreement-1.5","handbook\u002Fsales\u002Fsubscription-agreement-1.5",23,{"title":1515,"path":1516,"stem":1517,"order":633},"Systems & Tools","\u002Fhandbook\u002Fsales\u002Ftools","handbook\u002Fsales\u002Ftools",{"title":1519,"path":1520,"stem":1521,"order":655},"Working Norms","\u002Fhandbook\u002Fsales\u002Fworking-norms","handbook\u002Fsales\u002Fworking-norms",1786230997374]