[{"data":1,"prerenderedAt":1558},["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,1107,1195,1257,1398,1403],{"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,953,993,997,1054,1058,1085,1089,1104],{"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],{"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},"Platform Ops","i-lucide-server","\u002Fhandbook\u002Fengineering\u002Fops","handbook\u002Fengineering\u002Fops\u002Findex",[959,960,961,965,969,973,977,981,985,989],{"title":954,"path":956,"stem":957},{"title":5,"path":723,"stem":725},{"title":962,"path":963,"stem":964},"FlowFuse Dedicated","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated","handbook\u002Fengineering\u002Fops\u002Fdedicated",{"title":966,"path":967,"stem":968},"Deployment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fdeployment","handbook\u002Fengineering\u002Fops\u002Fdeployment",{"title":970,"path":971,"stem":972},"Incident Response","\u002Fhandbook\u002Fengineering\u002Fops\u002Fincident-response","handbook\u002Fengineering\u002Fops\u002Fincident-response",{"title":974,"path":975,"stem":976},"Observability","\u002Fhandbook\u002Fengineering\u002Fops\u002Fobservability","handbook\u002Fengineering\u002Fops\u002Fobservability",{"title":978,"path":979,"stem":980},"Production Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction","handbook\u002Fengineering\u002Fops\u002Fproduction",{"title":982,"path":983,"stem":984},"Update Stacks on Production","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction-stack-update","handbook\u002Fengineering\u002Fops\u002Fproduction-stack-update",{"title":986,"path":987,"stem":988},"Self Hosted Assistant","\u002Fhandbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant","handbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant",{"title":990,"path":991,"stem":992},"Staging Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fstaging","handbook\u002Fengineering\u002Fops\u002Fstaging",{"title":994,"path":995,"stem":996},"Packaging Guidelines","\u002Fhandbook\u002Fengineering\u002Fpackaging","handbook\u002Fengineering\u002Fpackaging",{"title":998,"icon":999,"path":1000,"stem":1001,"children":1002},"Product","i-lucide-package","\u002Fhandbook\u002Fengineering\u002Fproduct","handbook\u002Fengineering\u002Fproduct\u002Findex",[1003,1004,1008,1012,1016,1020,1024,1031,1035,1038,1042,1046,1050],{"title":998,"path":1000,"stem":1001},{"title":1005,"path":1006,"stem":1007},"Feature Catalog","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeatures","handbook\u002Fengineering\u002Fproduct\u002Ffeatures",{"title":1009,"path":1010,"stem":1011},"Feedback","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeedback","handbook\u002Fengineering\u002Fproduct\u002Ffeedback",{"title":1013,"path":1014,"stem":1015},"Glossary","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fglossary","handbook\u002Fengineering\u002Fproduct\u002Fglossary",{"title":1017,"path":1018,"stem":1019},"Methodology","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmethodology","handbook\u002Fengineering\u002Fproduct\u002Fmethodology",{"title":1021,"path":1022,"stem":1023},"Metrics","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmetrics","handbook\u002Fengineering\u002Fproduct\u002Fmetrics",{"title":1025,"path":1026,"stem":1027,"children":1028,"icon":1030},"Personas","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpersonas","handbook\u002Fengineering\u002Fproduct\u002Fpersonas\u002Findex",[1029],{"title":1025,"path":1026,"stem":1027},"i-lucide-user-circle",{"title":1032,"path":1033,"stem":1034},"Pricing Principles","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpricing","handbook\u002Fengineering\u002Fproduct\u002Fpricing",{"title":778,"path":1036,"stem":1037},"\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fprinciples","handbook\u002Fengineering\u002Fproduct\u002Fprinciples",{"title":1039,"path":1040,"stem":1041},"Product Swimlanes","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes","handbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes",{"title":1043,"path":1044,"stem":1045},"Product Growth","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ftelemetry","handbook\u002Fengineering\u002Fproduct\u002Ftelemetry",{"title":1047,"path":1048,"stem":1049},"Versioning","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fversioning","handbook\u002Fengineering\u002Fproduct\u002Fversioning",{"title":1051,"path":1052,"stem":1053},"Market Segments","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fverticals","handbook\u002Fengineering\u002Fproduct\u002Fverticals",{"title":1055,"path":1056,"stem":1057},"Project Management","\u002Fhandbook\u002Fengineering\u002Fproject-management","handbook\u002Fengineering\u002Fproject-management",{"title":1059,"icon":1060,"path":1061,"stem":1062,"children":1063},"Releases","i-lucide-rocket","\u002Fhandbook\u002Fengineering\u002Freleases","handbook\u002Fengineering\u002Freleases\u002Findex",[1064,1065,1069,1073,1077,1081],{"title":1059,"path":1061,"stem":1062},{"title":1066,"path":1067,"stem":1068},"Dashboard 2.0 Releases","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdashboard-2","handbook\u002Fengineering\u002Freleases\u002Fdashboard-2",{"title":1070,"path":1071,"stem":1072},"Release Process - Digital Ocean","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdigital-ocean","handbook\u002Fengineering\u002Freleases\u002Fdigital-ocean",{"title":1074,"path":1075,"stem":1076},"Release Process","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fprocess","handbook\u002Fengineering\u002Freleases\u002Fprocess",{"title":1078,"path":1079,"stem":1080},"Release Blogs","\u002Fhandbook\u002Fengineering\u002Freleases\u002Frelease-blogs","handbook\u002Fengineering\u002Freleases\u002Frelease-blogs",{"title":1082,"path":1083,"stem":1084},"Changelog Posts","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fwriting-changelog","handbook\u002Fengineering\u002Freleases\u002Fwriting-changelog",{"title":1086,"path":1087,"stem":1088},"Security Policy","\u002Fhandbook\u002Fengineering\u002Fsecurity","handbook\u002Fengineering\u002Fsecurity",{"title":1090,"path":1091,"stem":1092,"children":1093,"icon":1103},"Support","\u002Fhandbook\u002Fengineering\u002Fsupport","handbook\u002Fengineering\u002Fsupport\u002Findex",[1094,1095,1099],{"title":1090,"path":1091,"stem":1092},{"title":1096,"path":1097,"stem":1098},"Triage Duty","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftriage","handbook\u002Fengineering\u002Fsupport\u002Ftriage",{"title":1100,"path":1101,"stem":1102},"Troubleshooting","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","handbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","i-lucide-life-buoy",{"title":885,"path":1105,"stem":1106},"\u002Fhandbook\u002Fengineering\u002Ftools","handbook\u002Fengineering\u002Ftools",{"title":1108,"group":1109,"icon":1110,"order":614,"path":1111,"stem":1112,"children":1113},"Marketing","Marketing department","i-lucide-megaphone","\u002Fhandbook\u002Fmarketing","handbook\u002Fmarketing\u002Findex",[1114,1115,1121,1125,1140,1159,1163,1167,1171,1175,1179,1183,1187,1191],{"title":1108,"path":1111,"stem":1112},{"title":1116,"path":1117,"stem":1118,"children":1119},"Account-Based Marketing","\u002Fhandbook\u002Fmarketing\u002Faccount-based-marketing","handbook\u002Fmarketing\u002Faccount-based-marketing\u002Findex",[1120],{"title":1116,"path":1117,"stem":1118},{"title":1122,"path":1123,"stem":1124},"Brand Voice","\u002Fhandbook\u002Fmarketing\u002Fbrand-voice","handbook\u002Fmarketing\u002Fbrand-voice",{"title":1126,"icon":1127,"path":1128,"stem":1129,"children":1130},"Community","i-lucide-users-2","\u002Fhandbook\u002Fmarketing\u002Fcommunity","handbook\u002Fmarketing\u002Fcommunity\u002Findex",[1131,1132,1136],{"title":1126,"path":1128,"stem":1129},{"title":1133,"path":1134,"stem":1135},"Community Guidelines","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines","handbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines",{"title":1137,"path":1138,"stem":1139},"Forums And Support","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support","handbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support",{"title":1141,"icon":1142,"path":1143,"stem":1144,"children":1145,"order":432},"Content Strategy","i-lucide-file-text","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy","handbook\u002Fmarketing\u002Fcontent-strategy\u002Findex",[1146,1147,1151,1155],{"title":1141,"path":1143,"stem":1144,"order":432},{"title":1148,"path":1149,"stem":1150},"Blog","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog",{"title":1152,"path":1153,"stem":1154},"Customer Stories","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories",{"title":1156,"path":1157,"stem":1158},"Webinars","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars",{"title":1160,"path":1161,"stem":1162},"Events","\u002Fhandbook\u002Fmarketing\u002Fevents","handbook\u002Fmarketing\u002Fevents",{"title":1164,"path":1165,"stem":1166},"How we work","\u002Fhandbook\u002Fmarketing\u002Fhow-we-work","handbook\u002Fmarketing\u002Fhow-we-work",{"title":1168,"path":1169,"stem":1170},"Lead Activation","\u002Fhandbook\u002Fmarketing\u002Flead-activation","handbook\u002Fmarketing\u002Flead-activation",{"title":1172,"path":1173,"stem":1174},"Lead Generation","\u002Fhandbook\u002Fmarketing\u002Fleads","handbook\u002Fmarketing\u002Fleads",{"title":1176,"path":1177,"stem":1178},"Company Messaging","\u002Fhandbook\u002Fmarketing\u002Fmessaging","handbook\u002Fmarketing\u002Fmessaging",{"title":1180,"path":1181,"stem":1182},"Marketing Programs","\u002Fhandbook\u002Fmarketing\u002Fprograms","handbook\u002Fmarketing\u002Fprograms",{"title":1184,"path":1185,"stem":1186},"Sales Development Representative (SDR)","\u002Fhandbook\u002Fmarketing\u002Fsdr","handbook\u002Fmarketing\u002Fsdr",{"title":1188,"path":1189,"stem":1190},"Social Media","\u002Fhandbook\u002Fmarketing\u002Fsocial-media","handbook\u002Fmarketing\u002Fsocial-media",{"title":1192,"path":1193,"stem":1194},"Website","\u002Fhandbook\u002Fmarketing\u002Fwebsite","handbook\u002Fmarketing\u002Fwebsite",{"title":1196,"group":736,"icon":1197,"order":451,"path":1198,"stem":1199,"children":1200},"Operations","i-lucide-settings-2","\u002Fhandbook\u002Foperations","handbook\u002Foperations\u002Findex",[1201,1202,1206,1210,1214,1237,1241,1245,1249,1253],{"title":1196,"path":1198,"stem":1199},{"title":1203,"path":1204,"stem":1205},"Accounting","\u002Fhandbook\u002Foperations\u002Faccounting","handbook\u002Foperations\u002Faccounting",{"title":1207,"path":1208,"stem":1209},"Accounts","\u002Fhandbook\u002Foperations\u002Faccounts","handbook\u002Foperations\u002Faccounts",{"title":1211,"path":1212,"stem":1213},"Billing","\u002Fhandbook\u002Foperations\u002Fbilling","handbook\u002Foperations\u002Fbilling",{"title":1215,"icon":1216,"path":1217,"stem":1218,"children":1219},"CEO Ops","i-lucide-briefcase","\u002Fhandbook\u002Foperations\u002Fceo-ops","handbook\u002Foperations\u002Fceo-ops\u002Findex",[1220,1221,1225,1229,1233],{"title":1215,"path":1217,"stem":1218},{"title":1222,"path":1223,"stem":1224},"Calendar Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management","handbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management",{"title":1226,"path":1227,"stem":1228},"Inbox Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Finbox-management","handbook\u002Foperations\u002Fceo-ops\u002Finbox-management",{"title":1230,"path":1231,"stem":1232},"Task Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftask-managment","handbook\u002Foperations\u002Fceo-ops\u002Ftask-managment",{"title":1234,"path":1235,"stem":1236},"Travel Booking","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking","handbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking",{"title":1238,"path":1239,"stem":1240},"Change Control","\u002Fhandbook\u002Foperations\u002Fchange","handbook\u002Foperations\u002Fchange",{"title":1242,"path":1243,"stem":1244},"Commission Payment","\u002Fhandbook\u002Foperations\u002Fcommission-payment","handbook\u002Foperations\u002Fcommission-payment",{"title":1246,"path":1247,"stem":1248},"Data at FlowFuse","\u002Fhandbook\u002Foperations\u002Fdata","handbook\u002Foperations\u002Fdata",{"title":1250,"path":1251,"stem":1252},"Signatures","\u002Fhandbook\u002Foperations\u002Fsignatures","handbook\u002Foperations\u002Fsignatures",{"title":1254,"path":1255,"stem":1256},"Vendors","\u002Fhandbook\u002Foperations\u002Fvendors","handbook\u002Foperations\u002Fvendors",{"title":1258,"group":1259,"icon":1260,"order":606,"path":1261,"stem":1262,"children":1263},"People Ops","Internal Operations","i-lucide-users","\u002Fhandbook\u002Fpeopleops","handbook\u002Fpeopleops\u002Findex",[1264,1265,1269,1273,1277,1281,1285,1308,1374,1378,1382,1386,1390,1394],{"title":1258,"path":1261,"stem":1262},{"title":1266,"path":1267,"stem":1268},"Coaching Plans","\u002Fhandbook\u002Fpeopleops\u002Fcoaching-plans","handbook\u002Fpeopleops\u002Fcoaching-plans",{"title":1270,"path":1271,"stem":1272},"Code of Conduct","\u002Fhandbook\u002Fpeopleops\u002Fcode-of-conduct","handbook\u002Fpeopleops\u002Fcode-of-conduct",{"title":1274,"path":1275,"stem":1276},"Compensation","\u002Fhandbook\u002Fpeopleops\u002Fcompensation","handbook\u002Fpeopleops\u002Fcompensation",{"title":1278,"path":1279,"stem":1280},"Compliance & Regulatory","\u002Fhandbook\u002Fpeopleops\u002Fcompliance","handbook\u002Fpeopleops\u002Fcompliance",{"title":1282,"path":1283,"stem":1284},"Expenses","\u002Fhandbook\u002Fpeopleops\u002Fexpenses","handbook\u002Fpeopleops\u002Fexpenses",{"title":1286,"icon":1287,"path":1288,"stem":1289,"children":1290},"Hiring","i-lucide-user-plus","\u002Fhandbook\u002Fpeopleops\u002Fhiring","handbook\u002Fpeopleops\u002Fhiring\u002Findex",[1291,1292,1296,1300,1304],{"title":1286,"path":1288,"stem":1289},{"title":1293,"path":1294,"stem":1295},"GitHub Navigation","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation","handbook\u002Fpeopleops\u002Fhiring\u002Fgithub-navigation",{"title":1297,"path":1298,"stem":1299},"Working with Recruiters","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Frecruiters","handbook\u002Fpeopleops\u002Fhiring\u002Frecruiters",{"title":1301,"path":1302,"stem":1303},"Screening Call","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call","handbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call",{"title":1305,"path":1306,"stem":1307},"STAR Questions","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","handbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions",{"title":1309,"icon":1310,"path":1311,"stem":1312,"children":1313},"Job Descriptions","i-lucide-file-badge","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Findex",[1314,1315,1319,1323,1327,1331,1335,1339,1343,1347,1351,1355,1359,1363,1366,1370],{"title":1309,"path":1311,"stem":1312},{"title":1316,"path":1317,"stem":1318},"Account Executive","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive",{"title":1320,"path":1321,"stem":1322},"CEO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo",{"title":1324,"path":1325,"stem":1326},"Chief of Staff","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff",{"title":1328,"path":1329,"stem":1330},"CTO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto",{"title":1332,"path":1333,"stem":1334},"Engineering Levels","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-levels",{"title":1336,"path":1337,"stem":1338},"Engineering Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager",{"title":1340,"path":1341,"stem":1342},"Fullstack Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer",{"title":1344,"path":1345,"stem":1346},"Fullstack Engineer (AI-Focused)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai",{"title":1348,"path":1349,"stem":1350},"Head of Marketing","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing",{"title":1352,"path":1353,"stem":1354},"Lead Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Flead-product-manager",{"title":1356,"path":1357,"stem":1358},"Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager",{"title":1360,"path":1361,"stem":1362},"Product Marketer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer",{"title":1184,"path":1364,"stem":1365},"\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative",{"title":1367,"path":1368,"stem":1369},"Solutions Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer",{"title":1371,"path":1372,"stem":1373},"VP of Sales","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales",{"title":1375,"path":1376,"stem":1377},"Holiday & Leave","\u002Fhandbook\u002Fpeopleops\u002Fleave","handbook\u002Fpeopleops\u002Fleave",{"title":1379,"path":1380,"stem":1381},"PeopleOps Policies","\u002Fhandbook\u002Fpeopleops\u002Forganization","handbook\u002Fpeopleops\u002Forganization",{"title":1383,"path":1384,"stem":1385},"Performance review","\u002Fhandbook\u002Fpeopleops\u002Fperformance-review","handbook\u002Fpeopleops\u002Fperformance-review",{"title":1387,"path":1388,"stem":1389},"Summit","\u002Fhandbook\u002Fpeopleops\u002Fsummit","handbook\u002Fpeopleops\u002Fsummit",{"title":1391,"path":1392,"stem":1393},"Travel","\u002Fhandbook\u002Fpeopleops\u002Ftravel","handbook\u002Fpeopleops\u002Ftravel",{"title":1395,"path":1396,"stem":1397},"U.S. Compliance Policies","\u002Fhandbook\u002Fpeopleops\u002Fus-compliance","handbook\u002Fpeopleops\u002Fus-compliance",{"title":1399,"path":1400,"stem":1401,"group":729,"order":1402},"Recent Updates","\u002Fhandbook\u002Frecent-changes","handbook\u002Frecent-changes",0,{"title":1404,"group":1404,"icon":1405,"order":628,"path":1406,"stem":1407,"children":1408},"Commercial Organization","i-lucide-trending-up","\u002Fhandbook\u002Fsales","handbook\u002Fsales\u002Findex",[1409,1410,1418,1423,1427,1432,1438,1443,1448,1453,1458,1463,1468,1492,1497,1501,1505,1511,1516,1524,1528,1532,1537,1541,1545,1550,1554],{"title":1404,"path":1406,"stem":1407},{"title":1411,"path":1412,"stem":1413,"children":1414,"order":1416,"icon":1417},"Sales Compensation Plan","\u002Fhandbook\u002Fsales\u002Fcommission-plan","handbook\u002Fsales\u002Fcommission-plan\u002Findex",[1415],{"title":1411,"path":1412,"stem":1413},22,"i-lucide-dollar-sign",{"title":1419,"path":1420,"stem":1421,"order":1422},"Customer Journey Alignment","\u002Fhandbook\u002Fsales\u002Fcustomer-journey","handbook\u002Fsales\u002Fcustomer-journey",10,{"title":1424,"path":1425,"stem":1426,"order":512},"Customer Success","\u002Fhandbook\u002Fsales\u002Fcustomer-success","handbook\u002Fsales\u002Fcustomer-success",{"title":1428,"path":1429,"stem":1430,"order":1431},"Self Hosted Dashboard v2 Multi User","\u002Fhandbook\u002Fsales\u002Fdashboard-v2","handbook\u002Fsales\u002Fdashboard-v2",20,{"title":1433,"path":1434,"stem":1435,"order":1436,"icon":1437},"Demo Apps","\u002Fhandbook\u002Fsales\u002Fdemo-apps","handbook\u002Fsales\u002Fdemo-apps",13.7,"i-lucide-layout-grid",{"title":1439,"path":1440,"stem":1441,"order":1442},"Edge Connectivity Sales Process","\u002Fhandbook\u002Fsales\u002Fedge-connect-process","handbook\u002Fsales\u002Fedge-connect-process",19,{"title":1444,"path":1445,"stem":1446,"order":1447},"Engagements & Pricing","\u002Fhandbook\u002Fsales\u002Fengagements","handbook\u002Fsales\u002Fengagements",14,{"title":1449,"path":1450,"stem":1451,"order":1452,"icon":955},"FlowFuse Trial Environment","\u002Fhandbook\u002Fsales\u002Fflowfuse-trial-environment","handbook\u002Fsales\u002Fflowfuse-trial-environment",13.6,{"title":1454,"path":1455,"stem":1456,"order":1457},"Forecast Review","\u002Fhandbook\u002Fsales\u002Fforecast-review","handbook\u002Fsales\u002Fforecast-review",15,{"title":1459,"path":1460,"stem":1461,"order":1462},"HubSpot","\u002Fhandbook\u002Fsales\u002Fhubspot","handbook\u002Fsales\u002Fhubspot",16,{"title":1464,"path":1465,"stem":1466,"order":1467},"Legal","\u002Fhandbook\u002Fsales\u002Flegal","handbook\u002Fsales\u002Flegal",21,{"title":1469,"order":1470,"icon":1471,"path":1472,"stem":1473,"children":1474},"Sales Meetings",13,"i-lucide-calendar","\u002Fhandbook\u002Fsales\u002Fmeetings","handbook\u002Fsales\u002Fmeetings\u002Findex",[1475,1476,1480,1484,1488],{"title":1469,"path":1472,"stem":1473},{"title":1477,"path":1478,"stem":1479,"order":451},"Demo","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdemo","handbook\u002Fsales\u002Fmeetings\u002Fdemo",{"title":1481,"path":1482,"stem":1483,"order":432},"Discovery Meeting","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdiscovery","handbook\u002Fsales\u002Fmeetings\u002Fdiscovery",{"title":1485,"path":1486,"stem":1487,"order":562},"Proof of Value","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fpov","handbook\u002Fsales\u002Fmeetings\u002Fpov",{"title":1489,"path":1490,"stem":1491,"order":512},"Solution","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fsolution","handbook\u002Fsales\u002Fmeetings\u002Fsolution",{"title":1493,"path":1494,"stem":1495,"order":1496},"Onboarding & Development","\u002Fhandbook\u002Fsales\u002Fonboarding","handbook\u002Fsales\u002Fonboarding",11,{"title":1498,"path":1499,"stem":1500,"order":614},"Commercial Team Operating Principles","\u002Fhandbook\u002Fsales\u002Foperating-principles","handbook\u002Fsales\u002Foperating-principles",{"title":1502,"path":1503,"stem":1504,"order":606},"Partnerships","\u002Fhandbook\u002Fsales\u002Fpartnerships","handbook\u002Fsales\u002Fpartnerships",{"title":1506,"path":1507,"stem":1508,"order":1509,"icon":1510},"PoV Workbook","\u002Fhandbook\u002Fsales\u002Fpov-workbook","handbook\u002Fsales\u002Fpov-workbook",13.5,"i-lucide-clipboard-list",{"title":1512,"path":1513,"stem":1514,"order":1515},"Pricing Decks","\u002Fhandbook\u002Fsales\u002Fpricing-decks","handbook\u002Fsales\u002Fpricing-decks",18,{"title":1517,"path":1518,"stem":1519,"children":1520,"order":1522,"icon":1523},"Processes","\u002Fhandbook\u002Fsales\u002Fprocesses","handbook\u002Fsales\u002Fprocesses\u002Findex",[1521],{"title":1517,"path":1518,"stem":1519},12,"i-lucide-workflow",{"title":1525,"path":1526,"stem":1527,"order":562},"Professional Services","\u002Fhandbook\u002Fsales\u002Fprofessional-services","handbook\u002Fsales\u002Fprofessional-services",{"title":1529,"path":1530,"stem":1531,"order":628},"Sales Regions","\u002Fhandbook\u002Fsales\u002Fregions","handbook\u002Fsales\u002Fregions",{"title":1533,"path":1534,"stem":1535,"order":1536},"Sales Deck","\u002Fhandbook\u002Fsales\u002Fsales-deck","handbook\u002Fsales\u002Fsales-deck",17,{"title":1538,"path":1539,"stem":1540,"order":432},"Sales","\u002Fhandbook\u002Fsales\u002Fsales-team","handbook\u002Fsales\u002Fsales-team",{"title":1542,"path":1543,"stem":1544,"order":451},"Solution Engineering","\u002Fhandbook\u002Fsales\u002Fsolution-engineering","handbook\u002Fsales\u002Fsolution-engineering",{"title":1546,"path":1547,"stem":1548,"order":1549},"Subscription Agreement 1.5","\u002Fhandbook\u002Fsales\u002Fsubscription-agreement-1.5","handbook\u002Fsales\u002Fsubscription-agreement-1.5",23,{"title":1551,"path":1552,"stem":1553,"order":651},"Systems & Tools","\u002Fhandbook\u002Fsales\u002Ftools","handbook\u002Fsales\u002Ftools",{"title":1555,"path":1556,"stem":1557,"order":673},"Working Norms","\u002Fhandbook\u002Fsales\u002Fworking-norms","handbook\u002Fsales\u002Fworking-norms",1787156701092]