{
  "name": "Generate visual resumes from Telegram using Google Gemini and BrowserAct",
  "nodes": [
    {
      "id": "5521c9ff-ed2f-4c25-85b2-8c18ad5476af",
      "name": "Download Resume",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        384,
        544
      ]
    },
    {
      "id": "c15f27ea-5bda-4131-96c1-64199e334d25",
      "name": "Notify User",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -896,
        336
      ]
    },
    {
      "id": "25ebb9a3-0238-4c1d-8fdc-87bf8691e29e",
      "name": "Structured Output2",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1024,
        272
      ]
    },
    {
      "id": "9f9dcdb8-6d81-4363-a808-b193752f58a3",
      "name": "Google Gemini3",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        896,
        272
      ]
    },
    {
      "id": "fb3921e9-1577-42b8-9f52-eb4bec5438a0",
      "name": "Resume Writer",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        464,
        96
      ]
    },
    {
      "id": "386f1921-79d0-4955-a99d-9a4fb49ef5e1",
      "name": "Structured Output1",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        592,
        272
      ]
    },
    {
      "id": "ff62e4f9-4069-4b6b-8f93-d09fbefb7909",
      "name": "Google Gemini2",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        464,
        272
      ]
    },
    {
      "id": "c87bd274-022f-4e59-97e1-a1b79c2e45e4",
      "name": "Clear sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -608,
        528
      ]
    },
    {
      "id": "c0607040-a6b2-49a1-b9e8-d30a56a7084a",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -160,
        528
      ]
    },
    {
      "id": "7414cf29-b4be-4b56-a7c1-d9cf1cc51dc1",
      "name": "Google Gemini1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -912,
        880
      ]
    },
    {
      "id": "dc2ad052-af8c-49c6-8f61-9e9410bc70ae",
      "name": "Structured Output",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -1664,
        752
      ]
    },
    {
      "id": "e363cdbe-87b9-46fc-829a-cab96c471546",
      "name": "Google Gemini",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -1776,
        784
      ]
    },
    {
      "id": "a1c2dd73-b6d6-4864-9f14-416683de08c2",
      "name": "Validate user Input",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1760,
        560
      ]
    },
    {
      "id": "ad5456a1-c47a-4c15-8579-177d41258b9e",
      "name": "Documentation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2352,
        -16
      ],
      "parameters": {
        "width": 380,
        "height": 520,
        "content": "## ⚡ Workflow Overview & Setup\n\n**Summary:** This automation analyzes Telegram inputs to generate professional visual resumes by combining BrowserAct web scraping, CloudConvert processing, and Google "
      }
    },
    {
      "id": "88a5e8b7-ff8b-452c-8b4e-86f9375bbca3",
      "name": "Step 1 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1936,
        368
      ],
      "parameters": {
        "width": 652,
        "height": 144,
        "content": "### 🤖 Step 1: Input Analysis & Routing\n\nThe workflow begins by analyzing incoming Telegram messages to distinguish between general chat and resume generation requests. If a resume intent is detected, "
      }
    },
    {
      "id": "e7e260de-0637-49c8-bcfe-9e9bd4308dd3",
      "name": "Step 2 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -896,
        144
      ],
      "parameters": {
        "width": 684,
        "height": null,
        "content": "### 🕷️ Step 2: BrowserAct Automation & Data Prep\n\nA BrowserAct automation is triggered to retrieve external resume template data, which is then parsed and structured. The system clears previous record"
      }
    },
    {
      "id": "e425651c-0f38-427e-9163-ecc912eddde7",
      "name": "Step 3 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        528,
        752
      ],
      "parameters": {
        "width": 668,
        "height": 144,
        "content": "### 👁️ Step 3: Visual Decomposition\n\nThe workflow converts retrieved resume files into JPG and uses AI to analyze their visual structure. It reverse-engineers the design layout, color palettes, and ty"
      }
    },
    {
      "id": "44156c7c-4a17-4a7a-91d0-f022c48fcad2",
      "name": "Step 4 Explanation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        464,
        -96
      ],
      "parameters": {
        "width": 620,
        "height": 144,
        "content": "### 🎨 Step 4: AI Design Generation\n\nUtilizing the analyzed design data, the system creates a comprehensive prompt describing the ideal resume layout for the candidate's industry. It then generates a h"
      }
    },
    {
      "id": "34627454-d9b4-4fd2-ad31-d2d9499101a5",
      "name": "User Sends Message to Bot",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -1936,
        560
      ]
    },
    {
      "id": "d2ea304d-cdf3-4b39-9261-24f61ca1cfd3",
      "name": "Check For Input Type",
      "type": "n8n-nodes-base.switch",
      "position": [
        -1424,
        544
      ]
    },
    {
      "id": "2fc3f933-841c-4b75-9b6d-0f58f6504862",
      "name": "Run Resume Workflow",
      "type": "n8n-nodes-browseract.browserAct",
      "position": [
        -896,
        528
      ]
    },
    {
      "id": "6a3e15d2-500d-4d60-89c1-d3260fae6492",
      "name": "Splitting BrowserAct Items",
      "type": "n8n-nodes-base.code",
      "position": [
        -384,
        528
      ]
    },
    {
      "id": "915fc10f-b8a0-42c9-bd11-4a20d17f8acd",
      "name": "Chatting With User",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -912,
        736
      ]
    },
    {
      "id": "c2b616bd-0384-4532-9ba5-235c3d12c720",
      "name": "SVG To JPG",
      "type": "@cloudconvert/n8n-nodes-cloudconvert.cloudConvert",
      "position": [
        608,
        544
      ]
    },
    {
      "id": "e558b724-28e8-4229-a9e1-403d9a10e23b",
      "name": "Analyze Resume image",
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "position": [
        816,
        544
      ]
    },
    {
      "id": "5b790b27-a250-403f-844f-ef34d114e8ca",
      "name": "Save Data",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1056,
        544
      ]
    },
    {
      "id": "27b1f40d-c146-44f6-bb1b-7774b0cc4393",
      "name": "Resume Visualization",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        896,
        96
      ]
    },
    {
      "id": "29a409d8-bc77-4ea7-9b86-339ac6256767",
      "name": "Generate Resume",
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "position": [
        1280,
        144
      ]
    },
    {
      "id": "bb1c7677-b0af-4836-9cad-c3b884bce38d",
      "name": "Send Resume Back",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1472,
        144
      ]
    },
    {
      "id": "5e04fa2f-c02e-4486-854f-808afc27d60f",
      "name": "Aggregate Google Sheet Data",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        272,
        208
      ]
    },
    {
      "id": "c7ac1d7c-b7fe-4ce6-81ca-29e61b70ae5d",
      "name": "Get Saved Resume",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        80,
        208
      ]
    },
    {
      "id": "7fade35b-af42-420a-9af5-5e1a82e7abd4",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1936,
        -16
      ],
      "parameters": {
        "width": 640,
        "height": 352,
        "content": "@[youtube](TnObYpgHXSs)"
      }
    },
    {
      "id": "aed04091-bc9a-4636-be29-42f4fcd26015",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -688,
        432
      ],
      "parameters": {
        "width": 256,
        "height": 256,
        "content": "### Google Sheet Headers\nTo use this workflow, create a Google Sheet with the following header:\n* Resume Details"
      }
    },
    {
      "id": "4de33096-5416-4777-88fb-74d5a7db003d",
      "name": "Answer the User",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -608,
        736
      ]
    }
  ],
  "connections": {
    "Save Data": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "SVG To JPG": {
      "main": [
        [
          {
            "node": "Analyze Resume image",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clear sheet": {
      "main": [
        [
          {
            "node": "Splitting BrowserAct Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini": {
      "ai_languageModel": [
        [
          {
            "node": "Structured Output",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Validate user Input",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Resume Writer": {
      "main": [
        [
          {
            "node": "Resume Visualization",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini1": {
      "ai_languageModel": [
        [
          {
            "node": "Chatting With User",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini2": {
      "ai_languageModel": [
        [
          {
            "node": "Structured Output1",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Resume Writer",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini3": {
      "ai_languageModel": [
        [
          {
            "node": "Structured Output2",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Resume Visualization",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Download Resume": {
      "main": [
        [
          {
            "node": "SVG To JPG",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Resume": {
      "main": [
        [
          {
            "node": "Send Resume Back",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [
          {
            "node": "Get Saved Resume",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Download Resume",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Saved Resume": {
      "main": [
        [
          {
            "node": "Aggregate Google Sheet Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output": {
      "ai_outputParser": [
        [
          {
            "node": "Validate user Input",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Chatting With User": {
      "main": [
        [
          {
            "node": "Answer the User",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output1": {
      "ai_outputParser": [
        [
          {
            "node": "Resume Writer",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output2": {
      "ai_outputParser": [
        [
          {
            "node": "Resume Visualization",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Run Resume Workflow": {
      "main": [
        [
          {
            "node": "Clear sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Validate user Input": {
      "main": [
        [
          {
            "node": "Check For Input Type",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyze Resume image": {
      "main": [
        [
          {
            "node": "Save Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check For Input Type": {
      "main": [
        [
          {
            "node": "Run Resume Workflow",
            "type": "main",
            "index": 0
          },
          {
            "node": "Notify User",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Chatting With User",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Chatting With User",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Resume Visualization": {
      "main": [
        [
          {
            "node": "Generate Resume",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "User Sends Message to Bot": {
      "main": [
        [
          {
            "node": "Validate user Input",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Splitting BrowserAct Items": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Google Sheet Data": {
      "main": [
        [
          {
            "node": "Resume Writer",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}