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