{"componentChunkName":"component---src-templates-docs-js","path":"/guides/building-workflows-on-the-canvas","result":{"data":{"site":{"siteMetadata":{"title":"Documentation | DesignerBox","docsLocation":""}},"mdx":{"fields":{"id":"03d3a238-1fc2-5702-9e1e-125fbef2a797","title":"Building Workflows on the Canvas","slug":"/guides/building-workflows-on-the-canvas","locale":"en-GB"},"body":"var _excluded = [\"components\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"Building Workflows on the Canvas\",\n  \"metaTitle\": \"Building Workflows | DesignerBox\",\n  \"metaDescription\": \"Build a custom AI pipeline on the DesignerBox canvas: start new or from a technique, connect nodes, configure, and run.\",\n  \"order\": 3\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", null, \"Building Workflows on the Canvas\"), mdx(\"p\", null, \"A \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"workflow\"), \" is your own AI media pipeline for image and video generation. You build it on the node canvas by connecting building blocks, then run it as many times as you like.\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"800px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/356e8/workflows.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": \"noopener\"\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"56.49999999999999%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAQFAf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAa6lHRYZD//EABsQAAIBBQAAAAAAAAAAAAAAAAECAwQQEhMx/9oACAEBAAEFApCwCtU4w7Cvb//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAEDBQAAAAAAAAAAAAAAAAEAERICICIjQf/aAAgBAQAGPwIRDlGVGXFsDGz/xAAcEAACAQUBAAAAAAAAAAAAAAABEQAQITFhkbH/2gAIAQEAAT8hMh9CnN4l7CZvsQyDr//aAAwDAQACAAMAAAAQ0+//xAAVEQEBAAAAAAAAAAAAAAAAAAAAEf/aAAgBAwEBPxBX/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRAAAgIBBQAAAAAAAAAAAAAAAREAIWEQMUFRcf/aAAgBAQABPxA0NFEoQyyIngtcVBc+oQgN1W1dE5ilSFhhrX//2Q==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"The DesignerBox Workflows screen with a New Workflow button, technique starting points, and saved workflows\",\n    \"title\": \"The DesignerBox Workflows screen with a New Workflow button, technique starting points, and saved workflows\",\n    \"src\": \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/4b190/workflows.jpg\",\n    \"srcSet\": [\"/docs/static/69f67bc4a3135fab017cea9d87c3569f/e07e9/workflows.jpg 200w\", \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/066f9/workflows.jpg 400w\", \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/4b190/workflows.jpg 800w\", \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/e5166/workflows.jpg 1200w\", \"/docs/static/69f67bc4a3135fab017cea9d87c3569f/356e8/workflows.jpg 1512w\"],\n    \"sizes\": \"(max-width: 800px) 100vw, 800px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \")), mdx(\"h2\", null, \"Start a workflow\"), mdx(\"p\", null, \"Open \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Workflows\"), \" from the sidebar, then either:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Select \", mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"New Workflow\"), \" to build a custom pipeline from scratch, or\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Start from a Technique\"), \" to begin with a ready-made recipe and edit it.\")), mdx(\"h2\", null, \"Build with nodes\"), mdx(\"p\", null, \"On the canvas, click \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Add Node\"), \" (the + button in the toolbar) to open the node palette, then add and connect nodes. Each node does one job, for example bring in an image, remove a background, relight, or upscale. The output of one node feeds the next, so the canvas describes the whole generation step by step.\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"800px\"\n    }\n  }, \"\\n      \", mdx(\"a\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-link\",\n    \"href\": \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/356e8/workflow-canvas.jpg\",\n    \"style\": {\n      \"display\": \"block\"\n    },\n    \"target\": \"_blank\",\n    \"rel\": \"noopener\"\n  }, \"\\n    \", mdx(\"span\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"56.49999999999999%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAECBf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAeFlCqP/xAAWEAADAAAAAAAAAAAAAAAAAAABESD/2gAIAQEAAQUCKr//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAUEAEAAAAAAAAAAAAAAAAAAAAg/9oACAEBAAY/Al//xAAXEAEAAwAAAAAAAAAAAAAAAAABESAh/9oACAEBAAE/IQAh23//2gAMAwEAAgADAAAAEBDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAGhAAAgIDAAAAAAAAAAAAAAAAAAERIRBRgf/aAAgBAQABPxCwBldzBC2dyz//2Q==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"img\", {\n    parentName: \"a\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"alt\": \"A connected five-node Product Photography workflow on the DesignerBox canvas\",\n    \"title\": \"A connected five-node Product Photography workflow on the DesignerBox canvas\",\n    \"src\": \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/4b190/workflow-canvas.jpg\",\n    \"srcSet\": [\"/docs/static/f0da9ad076c0543e48e886706fa0df9f/e07e9/workflow-canvas.jpg 200w\", \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/066f9/workflow-canvas.jpg 400w\", \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/4b190/workflow-canvas.jpg 800w\", \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/e5166/workflow-canvas.jpg 1200w\", \"/docs/static/f0da9ad076c0543e48e886706fa0df9f/356e8/workflow-canvas.jpg 1512w\"],\n    \"sizes\": \"(max-width: 800px) 100vw, 800px\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    },\n    \"loading\": \"lazy\"\n  }), \"\\n  \"), \"\\n    \")), mdx(\"p\", null, \"See \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/docs/features/workflows-and-canvas/node-types\"\n  }, \"the node reference\"), \" for what each node does.\"), mdx(\"h2\", null, \"Run, save, and share\"), mdx(\"p\", null, \"Run the workflow to generate your output. Save it to \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"My Workflows\"), \" to reuse later, and publish it to the \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/docs/features/community\"\n  }, \"Community\"), \" so others can copy it.\"), mdx(\"p\", null, \"Learn more in \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/docs/features/workflows-and-canvas\"\n  }, \"Workflows and the Canvas\"), \".\"));\n}\n;\nMDXContent.isMDXComponent = true;","rawBody":"---\ntitle: \"Building Workflows on the Canvas\"\nmetaTitle: \"Building Workflows | DesignerBox\"\nmetaDescription: \"Build a custom AI pipeline on the DesignerBox canvas: start new or from a technique, connect nodes, configure, and run.\"\norder: 3\n---\n\n# Building Workflows on the Canvas\n\nA **workflow** is your own AI media pipeline for image and video generation. You build it on the node canvas by connecting building blocks, then run it as many times as you like.\n\n![The DesignerBox Workflows screen with a New Workflow button, technique starting points, and saved workflows](../images/docs/workflows.jpg)\n\n## Start a workflow\n\nOpen **Workflows** from the sidebar, then either:\n\n- Select **New Workflow** to build a custom pipeline from scratch, or\n- **Start from a Technique** to begin with a ready-made recipe and edit it.\n\n## Build with nodes\n\nOn the canvas, click **Add Node** (the + button in the toolbar) to open the node palette, then add and connect nodes. Each node does one job, for example bring in an image, remove a background, relight, or upscale. The output of one node feeds the next, so the canvas describes the whole generation step by step.\n\n![A connected five-node Product Photography workflow on the DesignerBox canvas](../images/docs/workflow-canvas.jpg)\n\nSee [the node reference](/features/workflows-and-canvas/node-types) for what each node does.\n\n## Run, save, and share\n\nRun the workflow to generate your output. Save it to **My Workflows** to reuse later, and publish it to the [Community](/features/community) so others can copy it.\n\nLearn more in [Workflows and the Canvas](/features/workflows-and-canvas).\n","tableOfContents":{"items":[{"url":"#building-workflows-on-the-canvas","title":"Building Workflows on the Canvas","items":[{"url":"#start-a-workflow","title":"Start a workflow"},{"url":"#build-with-nodes","title":"Build with nodes"},{"url":"#run-save-and-share","title":"Run, save, and share"}]}]},"parent":{"__typename":"File","relativePath":"en/guides/building-workflows-on-the-canvas.md"},"frontmatter":{"metaTitle":"Building Workflows | DesignerBox","metaDescription":"Build a custom AI pipeline on the DesignerBox canvas: start new or from a technique, connect nodes, configure, and run.","order":3}},"allMdx":{"edges":[{"node":{"fields":{"slug":"/features","title":"Features"}}},{"node":{"fields":{"slug":"/guides","title":"Guides"}}},{"node":{"fields":{"slug":"/integrations","title":"Integrations"}}},{"node":{"fields":{"slug":"/pricing-faqs","title":"Pricing FAQs"}}},{"node":{"fields":{"slug":"/knowledge-base","title":"Knowledge Base"}}},{"node":{"fields":{"slug":"/features/avatars-and-models","title":"AI Character"}}},{"node":{"fields":{"slug":"/features/brand-profile","title":"Brand Profile and Library"}}},{"node":{"fields":{"slug":"/features/relighting-and-angles","title":"Relighting and Angles"}}},{"node":{"fields":{"slug":"/features/upscaling","title":"Upscaling"}}},{"node":{"fields":{"slug":"/features/image-generation","title":"AI Image"}}},{"node":{"fields":{"slug":"/features/virtual-try-on","title":"Virtual Try-On"}}},{"node":{"fields":{"slug":"/features/video","title":"AI Video"}}},{"node":{"fields":{"slug":"/guides/building-workflows-on-the-canvas","title":"Building Workflows on the Canvas"}}},{"node":{"fields":{"slug":"/guides/create-your-first-image","title":"Create Your First Image"}}},{"node":{"fields":{"slug":"/features/techniques-and-templates","title":"Techniques and Templates"}}},{"node":{"fields":{"slug":"/guides/teams-and-brand-profiles","title":"Teams and Brand Profiles"}}},{"node":{"fields":{"slug":"/features/community","title":"Community"}}},{"node":{"fields":{"slug":"/guides/using-techniques-and-templates","title":"Using Techniques and Templates"}}},{"node":{"fields":{"slug":"/features/workflows-and-canvas","title":"Workflows and the Canvas"}}},{"node":{"fields":{"slug":"/integrations/api","title":"API"}}},{"node":{"fields":{"slug":"/guides/creating-videos","title":"Creating Videos"}}},{"node":{"fields":{"slug":"/integrations/white-label","title":"White-Label"}}},{"node":{"fields":{"slug":"/knowledge-base/how-to-update-card-details","title":"How to Update Card Details"}}},{"node":{"fields":{"slug":"/knowledge-base/plans-credits-and-limits","title":"Plans, Credits, and Limits"}}},{"node":{"fields":{"slug":"/knowledge-base/understanding-declined-card-payments","title":"Understanding Declined Card Payments"}}},{"node":{"fields":{"slug":"/features/workflows-and-canvas/node-types","title":"Node Types"}}},{"node":{"fields":{"slug":"/features/image-generation/editing-modes","title":"Editing Modes"}}},{"node":{"fields":{"slug":"/","title":"DesignerBox Documentation"}}}]}},"pageContext":{"id":"03d3a238-1fc2-5702-9e1e-125fbef2a797","locale":"en-GB"}},"staticQueryHashes":["361965504","361965504","417421954","417421954","445494767","445494767"]}