{
  "id": "nOl0KJvx21ys9HmJ",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "RSS par Cat\u00e9gorie vers HTML",
  "tags": [],
  "nodes": [
    {
      "id": "42ba72ef-afc0-4789-9a74-4d1a1ac0e424",
      "name": "Sticky Note - Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1696,
        896
      ],
      "parameters": {
        "width": 696,
        "height": 612,
        "content": "# \ud83d\udcec Personal Daily Tech/Manga/Movies Newsletter\n\n**What it does:**\nAutomatically curates and emails a personalized daily newsletter with the latest tech news, manga, movies tailored to your interests.\n\n**How it works:**\n\n1. Triggers daily at 12 PM\n2. Fetches RSS feeds from your favorite tech, manga, movies sources\n3. Make HTML template for mail based on your interests\n4. Sends a beautifully formatted newsletter to your inbox\n\n**Set up steps**\n\n1. Update the RSS feed URLs inside the Set nodes to match your preferred sources.\n2. Replace the email address in the Send Email node with your own.\n3. Modify the execution time in the Cron Trigger node if you want the newsletter to be sent at a different time.\n4. Enable the workflow to start receiving your personalized daily newsletter automatically.\n\n**Customize:**\n- Change RSS sources in the \"Set\" nodes\n- Update your email address in \"Send email\" node\n- Adjust schedule time in trigger node"
      },
      "typeVersion": 1
    },
    {
      "id": "a01df542-f863-4eee-adbe-6cbb148f539c",
      "name": "Split Out2",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -336,
        1792
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "cat"
      },
      "typeVersion": 1
    },
    {
      "id": "f5771190-5f35-45ef-934d-9759d8bbf38a",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -784,
        1792
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours",
              "hoursInterval": 5,
              "triggerAtMinute": 30
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7cd18a12-6656-4a38-99cc-4e7ccd4cb6c3",
      "name": "RSS Read1",
      "type": "n8n-nodes-base.rssFeedRead",
      "onError": "continueErrorOutput",
      "position": [
        752,
        1568
      ],
      "parameters": {
        "url": "={{ $json[\"Lien RSS\"] }}",
        "options": {}
      },
      "typeVersion": 1.2,
      "alwaysOutputData": true
    },
    {
      "id": "40b5b6b5-c1e4-411d-a29d-e976ec9b86f9",
      "name": "Loop Over Items3",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        464,
        1552
      ],
      "parameters": {
        "options": {},
        "batchSize": 2
      },
      "typeVersion": 3
    },
    {
      "id": "509f8c1d-5f27-44df-b43c-4a09d4623a72",
      "name": "Rss database",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -96,
        1792
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupValue": "={{ $json.cat }}",
              "lookupColumn": "Cat\u00e9gorie"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1anl-6-nbOfrsXJc7fhAAZ0yIONrqkg7qB7MXrqK37pw/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1anl-6-nbOfrsXJc7fhAAZ0yIONrqkg7qB7MXrqK37pw",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1anl-6-nbOfrsXJc7fhAAZ0yIONrqkg7qB7MXrqK37pw/edit?usp=drivesdk",
          "cachedResultName": "Rss Database 2"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "e792e4b5-3b49-478e-822c-f959a8fda9f1",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        96,
        1776
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "73f7daf4-8a2d-4ce1-9099-1595e0eb3c23",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json[\"Cat\u00e9gorie\"] }}",
                    "rightValue": "=Manga"
                  }
                ]
              }
            },
            {
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "4d7598e1-9e5e-413e-ae6d-1c17c61254a7",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json[\"Cat\u00e9gorie\"] }}",
                    "rightValue": "Cin\u00e9ma"
                  }
                ]
              }
            },
            {
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "b559253b-235e-4994-8814-69031f9510e3",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json[\"Cat\u00e9gorie\"] }}",
                    "rightValue": "Jeux Vid\u00e9o"
                  }
                ]
              }
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.3
    },
    {
      "id": "07e8483f-a58f-44ba-8ead-25a85fa74370",
      "name": "Code in Python (Beta)",
      "type": "n8n-nodes-base.code",
      "position": [
        992,
        1536
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "# Loop over input items and add a new field called 'myNewField' to the JSON of each one\nfor item in _input.all():\n  #item.json.myNewField = 1\n  pass\nreturn _input.all()[:3]"
      },
      "typeVersion": 2
    },
    {
      "id": "20848a57-917f-40e4-9d1e-a7bcfb92f966",
      "name": "RSS Read2",
      "type": "n8n-nodes-base.rssFeedRead",
      "onError": "continueErrorOutput",
      "position": [
        736,
        1808
      ],
      "parameters": {
        "url": "={{ $json[\"Lien RSS\"] }}",
        "options": {}
      },
      "typeVersion": 1.2,
      "alwaysOutputData": true
    },
    {
      "id": "8d5ab523-ffb2-4355-89c6-db103f2ba799",
      "name": "Loop Over Items4",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        448,
        1792
      ],
      "parameters": {
        "options": {},
        "batchSize": 2
      },
      "typeVersion": 3
    },
    {
      "id": "194568dc-aaef-4099-bb1f-b2934f89e600",
      "name": "Code in Python (Beta)1",
      "type": "n8n-nodes-base.code",
      "position": [
        992,
        1776
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "# Loop over input items and add a new field called 'myNewField' to the JSON of each one\nfor item in _input.all():\n  #item.json.myNewField = 1\n  pass\nreturn _input.all()[:3]"
      },
      "typeVersion": 2
    },
    {
      "id": "9dc31c66-06de-4b15-b4b6-d6ed15cab225",
      "name": "RSS Read3",
      "type": "n8n-nodes-base.rssFeedRead",
      "onError": "continueErrorOutput",
      "position": [
        784,
        2080
      ],
      "parameters": {
        "url": "={{ $json[\"Lien RSS\"] }}",
        "options": {}
      },
      "typeVersion": 1.2,
      "alwaysOutputData": true
    },
    {
      "id": "c48c1fc6-7296-4fcf-bf0a-e04feac8f6a9",
      "name": "Loop Over Items5",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        448,
        2064
      ],
      "parameters": {
        "options": {},
        "batchSize": 2
      },
      "typeVersion": 3
    },
    {
      "id": "f238d60e-a702-4f81-a8e4-30a7e7bea01d",
      "name": "Code in Python (Beta)2",
      "type": "n8n-nodes-base.code",
      "position": [
        992,
        2048
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "# Loop over input items and add a new field called 'myNewField' to the JSON of each one\nfor item in _input.all():\n  #item.json.myNewField = 1\n  pass\nreturn _input.all()[:3]"
      },
      "typeVersion": 2
    },
    {
      "id": "6315fdbc-9ede-4ab0-adb5-bc0a6152f768",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        2224,
        1760
      ],
      "parameters": {
        "options": {},
        "aggregate": "aggregateAllItemData",
        "destinationFieldName": "HTML"
      },
      "typeVersion": 1
    },
    {
      "id": "2e3f8bf2-4ccf-4eab-bfa2-0d77174acafc",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        1920,
        1744
      ],
      "parameters": {
        "numberInputs": 3
      },
      "typeVersion": 3.2
    },
    {
      "id": "77c4f730-c84e-4121-a63f-31c8efd22667",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -880,
        1712
      ],
      "parameters": {
        "color": 3,
        "width": 256,
        "height": 240,
        "content": "## Daily trigger\n"
      },
      "typeVersion": 1
    },
    {
      "id": "593f18ec-5bf8-495d-9646-b35e1d9fd6d5",
      "name": "Sticky Note - Processing1",
      "type": "n8n-nodes-base.stickyNote",
      "disabled": true,
      "position": [
        352,
        1472
      ],
      "parameters": {
        "color": 6,
        "width": 820,
        "height": 812,
        "content": "## \ud83d\udd04 RSS Feed Processing\nSplit, loop through feeds in batches, and fetch content"
      },
      "typeVersion": 1
    },
    {
      "id": "7d6dfe67-658c-4a8c-a7a6-4417a874df40",
      "name": "Sticky Note - Sources1",
      "type": "n8n-nodes-base.stickyNote",
      "disabled": true,
      "position": [
        -592,
        1680
      ],
      "parameters": {
        "color": 4,
        "width": 824,
        "height": 280,
        "content": "## \ud83d\udcf0 RSS Feed Sources\nDefine which RSS feeds to monitor for tech news and tools"
      },
      "typeVersion": 1
    },
    {
      "id": "eaf42c4f-b5d1-40bc-9505-c3d9b7f90b8b",
      "name": "Sticky Note - Combine1",
      "type": "n8n-nodes-base.stickyNote",
      "disabled": true,
      "position": [
        1264,
        1472
      ],
      "parameters": {
        "color": 2,
        "width": 356,
        "height": 744,
        "content": "## Set HTML part \n#Add information in HTML code part"
      },
      "typeVersion": 1
    },
    {
      "id": "6b2c7f0a-111f-4b85-9de0-3d044d6c63cc",
      "name": "Sticky Note - Combine2",
      "type": "n8n-nodes-base.stickyNote",
      "disabled": true,
      "position": [
        1808,
        1632
      ],
      "parameters": {
        "color": 5,
        "width": 644,
        "height": 312,
        "content": "## \ud83d\udce6 Combine & Convert\nMerge all feeds and convert to CSV for AI"
      },
      "typeVersion": 1
    },
    {
      "id": "ac0a0d8a-021f-463d-a522-939675299898",
      "name": "Sticky Note - Email1",
      "type": "n8n-nodes-base.stickyNote",
      "disabled": true,
      "position": [
        2560,
        1616
      ],
      "parameters": {
        "color": 7,
        "width": 696,
        "height": 472,
        "content": "## \ud83d\udce7 Set HTML FileNewsletter Delivery\n\nFormat and send the personalized newsletter.\n\n**Note:**\n"
      },
      "typeVersion": 1
    },
    {
      "id": "18fc3e68-0e5a-42f3-bd40-069666aa7204",
      "name": "Send a Mail",
      "type": "n8n-nodes-base.gmail",
      "onError": "continueRegularOutput",
      "position": [
        3024,
        1760
      ],
      "parameters": {
        "sendTo": "user@example.com",
        "message": "={{ $json.html }}",
        "options": {},
        "subject": "Newsletter"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1,
      "alwaysOutputData": true
    },
    {
      "id": "4909e681-f87e-47bd-8cf9-f7e629620fec",
      "name": "Mail Campaign",
      "type": "n8n-nodes-base.sendInBlue",
      "position": [
        3024,
        1936
      ],
      "parameters": {
        "sender": "user@example.com",
        "subject": "Newsletter",
        "sendHTML": true,
        "htmlContent": "={{ $json.html }}",
        "receipients": "user@example.com",
        "requestOptions": {},
        "additionalFields": {}
      },
      "credentials": {
        "sendInBlueApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "3e0bc1ab-3b99-4250-8246-3f6024ddeaaf",
      "name": "HTML Template",
      "type": "n8n-nodes-base.html",
      "position": [
        2608,
        1760
      ],
      "parameters": {
        "html": "<!DOCTYPE html>\n<html lang=\"fr\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  <title>Newsletter Unthynk</title>\n  <style>\n    :root {\n      --primary: #2b2b2b;\n      --secondary: #6f6f6f;\n      --accent: #d4a574;\n      --dark: #1e1e1e;\n      --light: #f4f4f2;\n      --border: #e8e8e6;\n      --text: #333;\n      --muted: #888;\n    }\n\n    * { box-sizing: border-box; margin: 0; padding: 0; }\n\n    body {\n      font-family: 'Segoe UI', 'Trebuchet MS', sans-serif;\n      background: linear-gradient(135deg, #f8f7f5 0%, #f1f1ef 100%);\n      padding: 20px;\n      color: var(--text);\n      line-height: 1.7;\n      min-height: 100vh;\n    }\n\n    .container {\n      max-width: 900px;\n      margin: 0 auto;\n      background: #fff;\n      border-radius: 16px;\n      overflow: hidden;\n      box-shadow: 0 12px 40px rgba(0,0,0,.1);\n    }\n\n    /* ===== HEADER ===== */\n    .header {\n      background: linear-gradient(135deg, var(--dark) 0%, var(--primary) 100%);\n      padding: 60px 32px 45px;\n      text-align: center;\n      color: #fff;\n      border-bottom: 3px solid var(--accent);\n    }\n\n    .header h1 {\n      font-family: 'Georgia', serif;\n      font-size: 2.8rem;\n      font-weight: 700;\n      letter-spacing: 3px;\n      margin-bottom: 8px;\n      text-transform: uppercase;\n      text-shadow: 2px 2px 4px rgba(0,0,0,.2);\n    }\n\n    .header p {\n      opacity: 0.92;\n      font-size: 1rem;\n      font-weight: 300;\n      letter-spacing: 1px;\n    }\n\n    /* ===== TABS ===== */\n    .tabs {\n      display: flex;\n      background: var(--light);\n      border-bottom: 2px solid var(--border);\n      flex-wrap: wrap;\n      gap: 0;\n    }\n\n    .tab {\n      flex: 1;\n      min-width: 120px;\n      padding: 18px 16px;\n      background: none;\n      border: none;\n      font-size: 1rem;\n      font-weight: 500;\n      cursor: pointer;\n      color: var(--muted);\n      transition: all .3s cubic-bezier(.4, 0, .2, 1);\n      position: relative;\n      text-transform: uppercase;\n      letter-spacing: 1px;\n    }\n\n    .tab:hover {\n      background: rgba(43, 43, 43, .05);\n      color: var(--primary);\n    }\n\n    .tab.active {\n      background: #fff;\n      color: var(--primary);\n      font-weight: 700;\n    }\n\n    .tab.active::after {\n      content: '';\n      position: absolute;\n      bottom: -2px;\n      left: 0;\n      right: 0;\n      height: 3px;\n      background: linear-gradient(90deg, var(--primary), var(--accent));\n    }\n\n    /* ===== CONTENT ===== */\n    .content {\n      padding: 40px 32px;\n      min-height: 500px;\n    }\n\n    .tab-content {\n      display: none;\n      animation: fadeIn .5s ease;\n    }\n\n    .tab-content.active {\n      display: block;\n    }\n\n    @keyframes fadeIn {\n      from {\n        opacity: 0;\n        transform: translateY(10px);\n      }\n      to {\n        opacity: 1;\n        transform: translateY(0);\n      }\n    }\n\n    /* ===== ARTICLE CARD ===== */\n    .article {\n      background: #fafaf8;\n      border: 1px solid var(--border);\n      border-radius: 12px;\n      padding: 28px;\n      margin-bottom: 24px;\n      transition: all .35s cubic-bezier(.4, 0, .2, 1);\n      border-left: 4px solid var(--accent);\n    }\n\n    .article:hover {\n      box-shadow: 0 14px 32px rgba(0,0,0,.12);\n      transform: translateY(-4px);\n      border-left-color: var(--primary);\n    }\n\n    .article h2 {\n      font-size: 1.5rem;\n      font-weight: 700;\n      margin-bottom: 10px;\n      color: var(--primary);\n      line-height: 1.4;\n    }\n\n    .article .author {\n      font-size: .9rem;\n      color: var(--secondary);\n      font-style: italic;\n      margin-bottom: 14px;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n    }\n\n    .article .author::before {\n      content: '\u270e';\n      color: var(--accent);\n    }\n\n    .article .summary {\n      color: #666;\n      margin-bottom: 18px;\n      font-size: .95rem;\n      line-height: 1.8;\n    }\n\n    .meta {\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-top: 1px solid var(--border);\n      padding-top: 16px;\n      margin-top: 16px;\n      flex-wrap: wrap;\n      gap: 12px;\n    }\n\n    .source {\n      font-size: .85rem;\n      color: var(--muted);\n      font-weight: 500;\n    }\n\n    .read {\n      background: linear-gradient(135deg, var(--primary), var(--secondary));\n      color: #fff;\n      padding: 10px 22px;\n      border-radius: 24px;\n      font-size: .9rem;\n      font-weight: 600;\n      text-decoration: none;\n      transition: all .3s ease;\n      border: 2px solid transparent;\n      cursor: pointer;\n      display: inline-block;\n    }\n\n    .read:hover {\n      background: linear-gradient(135deg, var(--secondary), var(--primary));\n      transform: translateX(2px);\n      box-shadow: 0 6px 16px rgba(43, 43, 43, .25);\n    }\n\n    /* ===== EMPTY STATE ===== */\n    .empty-state {\n      text-align: center;\n      padding: 60px 40px;\n      color: var(--muted);\n    }\n\n    .empty-state h3 {\n      font-size: 1.3rem;\n      margin-bottom: 10px;\n      color: var(--secondary);\n    }\n\n    .empty-state p {\n      font-size: .95rem;\n      opacity: .8;\n    }\n\n    /* ===== FOOTER ===== */\n    .footer {\n      background: linear-gradient(135deg, var(--dark) 0%, var(--primary) 100%);\n      color: #ccc;\n      text-align: center;\n      padding: 28px;\n      font-size: .85rem;\n      border-top: 3px solid var(--accent);\n    }\n\n    .footer a {\n      color: var(--accent);\n      text-decoration: none;\n      font-weight: 600;\n      transition: opacity .3s ease;\n    }\n\n    .footer a:hover {\n      opacity: 0.8;\n      text-decoration: underline;\n    }\n  /*  .article {\n  background: #ffffff;\n  border-radius: 14px;\n  padding: 1.5rem;\n  margin-bottom: 1.5rem;\n  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);\n  transition: transform 0.25s ease, box-shadow 0.25s ease;\n}\n\n.article:hover {\n  transform: translateY(-4px);\n  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.1);\n}\n\n.article-title {\n  font-size: 1.25rem;\n  font-weight: 600;\n  color: #1f2933;\n  margin-bottom: 0.75rem;\n  line-height: 1.4;\n}\n\n.article-summary {\n  color: #4b5563;\n  font-size: 0.95rem;\n  line-height: 1.6;\n  margin-bottom: 1.2rem;\n}\n\n.article-footer {\n  display: flex;\n  justify-content: flex-end;\n}\n\n.article-read {\n  text-decoration: none;\n  font-weight: 500;\n  font-size: 0.9rem;\n  color: #2563eb;\n  padding: 0.45rem 0.9rem;\n  border-radius: 8px;\n  transition: background 0.2s ease, color 0.2s ease;\n}\n\n.article-read:hover {\n  background: rgba(37, 99, 235, 0.1);\n  color: #1e40af;\n}\n*/\n\n    /* ===== RESPONSIVE ===== */\n    @media (max-width: 640px) {\n      .header h1 {\n        font-size: 2rem;\n        letter-spacing: 2px;\n      }\n\n      .content {\n        padding: 24px 18px;\n      }\n\n      .article {\n        padding: 18px;\n      }\n\n      .tab {\n        padding: 14px 10px;\n        font-size: .85rem;\n        min-width: 100px;\n      }\n\n      .tabs {\n        flex-wrap: wrap;\n      }\n\n      .meta {\n        flex-direction: column;\n        align-items: flex-start;\n      }\n    }\n    \n  </style>\n</head>\n<body>\n\n<div class=\"container\">\n\n  <header class=\"header\">\n    <h1>NEWSLETTER</h1>\n    <p>Veille th\u00e9matique par Unthynk</p>\n  </header>\n\n  <nav class=\"tabs\">\n    <button class=\"tab active\" onclick=\"openTab(event, 'news')\">\ud83d\udcfa Anime</button>\n    <button class=\"tab\" onclick=\"openTab(event, 'game')\">\ud83c\udfae Game</button>\n    <button class=\"tab\" onclick=\"openTab(event, 'school')\">\ud83c\udfac Movies</button>\n    <button class=\"tab\" onclick=\"openTab(event, 'science')\">\ud83d\udd2c Science</button>\n  </nav>\n\n  <main class=\"content\">\n\n    <!-- ANIME SECTION -->\n    <section id=\"news\" class=\"tab-content active\">\n      {{ $json.HTML[0].HTML.html1 }}\n    </section>\n\n    <!-- GAME SECTION -->\n    <section id=\"game\" class=\"tab-content\">\n      {{ $json.HTML[2].HTML.html3 }}\n    </section>\n\n    <!-- MOVIES SECTION -->\n    <section id=\"school\" class=\"tab-content\">\n {{ $json.HTML[1].HTML.html2 }}\n    </section>\n\n    <!-- SCIENCE SECTION -->\n    <section id=\"science\" class=\"tab-content\">\n      <article class=\"article\">\n        <h2>D\u00e9couvertes Scientifiques R\u00e9centes</h2>\n        <p class=\"author\">Par Auteur</p>\n        <p class=\"summary\">Les avanc\u00e9es majeures en science et recherche. De la physique quantique \u00e0 la biologie, d\u00e9couvrez comment la science fa\u00e7onne notre futur.</p>\n        <div class=\"meta\">\n          <span class=\"source\">Source: Nature Science</span>\n          <a href=\"#\" class=\"read\">Lire l'article</a>\n        </div>\n      </article>\n\n      <article class=\"article\">\n        <h2>Innovations Technologiques</h2>\n        <p class=\"author\">Par Auteur</p>\n        <p class=\"summary\">Explorez les innovations technologiques qui r\u00e9volutionnent le monde. Intelligence artificielle, biotechnologie, \u00e9nergie verte et bien d'autres domaines cl\u00e9s.</p>\n        <div class=\"meta\">\n          <span class=\"source\">Source: MIT Technology Review</span>\n          <a href=\"#\" class=\"read\">Lire l'article</a>\n        </div>\n      </article>\n    </section>\n\n  </main>\n\n  <footer class=\"footer\">\n    \u00a9 2025 Unthynk \u00b7 <a href=\"#\">Se d\u00e9sabonner</a>\n  </footer>\n</div>\n\n<script>\n  function openTab(evt, id) {\n    const contents = document.querySelectorAll('.tab-content');\n    const tabs = document.querySelectorAll('.tab');\n\n    contents.forEach(content => content.classList.remove('active'));\n    tabs.forEach(tab => tab.classList.remove('active'));\n\n    document.getElementById(id).classList.add('active');\n    evt.currentTarget.classList.add('active');\n  }\n</script>\n\n</body>\n</html>"
      },
      "typeVersion": 1.2
    },
    {
      "id": "cbf2b31e-b460-49cc-aa3f-8ab155863811",
      "name": "Category Rss",
      "type": "n8n-nodes-base.set",
      "position": [
        -560,
        1792
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "{ \"cat\":[\n  \"Actualit\u00e9s G\u00e9n\u00e9rales\",\n \"Technologie\",\n  \"Science\",\n  \"\u00c9conomie & Finance\",\n  \"Sports\",\n   \"Culture & Divertissement\",\n  \"Sant\u00e9\",\n   \"Environnement\",\n   \"Politique\",\n  \"\u00c9ducation\",\n  \"Jeux Vid\u00e9o\",\n  \"Cin\u00e9ma\",\n \"Manga\"\n  ]\n}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "4cfc76d1-9bf7-446c-8a1b-a34322f63870",
      "name": "Jeu video",
      "type": "n8n-nodes-base.code",
      "position": [
        1360,
        2048
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "m = \"\"\n\nfor item in _input.all():\n  t = item.json.title\n  l = item.json.link\n  c = item.json.content\n  a = item.json.creator\n  \n  m += f\"\"\"<article class=\"article\">\n  <header class=\"article-header\">\n    <h2 class=\"article-title\">{t}</h2>\n  </header>\n\n  <p class=\"summary\">{c}</p>\n\n  <footer class=\"article-footer\">\n    <a href=\"{l}\" class=\"article-read\">\n      Lire l\u2019article \u2192\n    </a>\n  </footer>\n</article>\n\"\"\"\n\nreturn [{\"HTML\":{'html3': m}}]"
      },
      "typeVersion": 2
    },
    {
      "id": "04401689-6544-4fea-ba0e-fbcf4a52fc09",
      "name": "Movie",
      "type": "n8n-nodes-base.code",
      "position": [
        1360,
        1776
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "m = \"\"\n\nfor item in _input.all():\n  t = item.json.title\n  l = item.json.link\n  c = item.json.content\n  a = item.json.creator\n  \n  m += f\"\"\"<article class=\"article\">\n  <header class=\"article-header\">\n    <h2 class=\"article-title\">{t}</h2>\n  </header>\n\n  <p class=\"summary\">{c}</p>\n\n  <footer class=\"article-footer\">\n    <a href=\"{l}\" class=\"article-read\">\n      Lire l\u2019article \u2192\n    </a>\n  </footer>\n</article>\n\"\"\"\n\nreturn [{\"HTML\":{'html2': m}}]"
      },
      "typeVersion": 2
    },
    {
      "id": "4ec09358-01bb-4488-80fe-e2624351c956",
      "name": "Manga",
      "type": "n8n-nodes-base.code",
      "position": [
        1376,
        1536
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "m = \"\"\n\nfor item in _input.all():\n  t = item.json.title\n  l = item.json.link\n  c = item.json.content\n  \n  m += f\"\"\"<article class=\"article\">\n  <header class=\"article-header\">\n    <h2 class=\"article-title\">{t}</h2>\n  </header>\n\n  <p class=\"summary\">{c}</p>\n\n  <footer class=\"article-footer\">\n    <a href=\"{l}\" class=\"article-read\">\n      Lire l\u2019article \u2192\n    </a>\n  </footer>\n</article>\n\"\"\"\n\n  \n\nreturn [{\"HTML\":{'html1': m}}]"
      },
      "typeVersion": 2
    }
  ],
  "active": true,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e969ddc4-c9fa-44fe-a947-151932c41794",
  "connections": {
    "Manga": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Movie": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Loop Over Items3",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Loop Over Items4",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Loop Over Items5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "HTML Template",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Jeu video": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "RSS Read1": {
      "main": [
        [
          {
            "node": "Loop Over Items3",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "RSS Read2": {
      "main": [
        [
          {
            "node": "Loop Over Items4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "RSS Read3": {
      "main": [
        [
          {
            "node": "Loop Over Items5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out2": {
      "main": [
        [
          {
            "node": "Rss database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send a Mail": {
      "main": [
        []
      ]
    },
    "Category Rss": {
      "main": [
        [
          {
            "node": "Split Out2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Rss database": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTML Template": {
      "main": [
        [
          {
            "node": "Mail Campaign",
            "type": "main",
            "index": 0
          },
          {
            "node": "Send a Mail",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items3": {
      "main": [
        [
          {
            "node": "Code in Python (Beta)",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "RSS Read1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items4": {
      "main": [
        [
          {
            "node": "Code in Python (Beta)1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "RSS Read2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items5": {
      "main": [
        [
          {
            "node": "Code in Python (Beta)2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "RSS Read3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Category Rss",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in Python (Beta)": {
      "main": [
        [
          {
            "node": "Manga",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in Python (Beta)1": {
      "main": [
        [
          {
            "node": "Movie",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in Python (Beta)2": {
      "main": [
        [
          {
            "node": "Jeu video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}