{"id":4558,"date":"2026-09-11T17:16:13","date_gmt":"2026-09-11T17:16:13","guid":{"rendered":"https:\/\/nel-media.com\/en\/?page_id=4558"},"modified":"2026-09-11T17:16:14","modified_gmt":"2026-09-11T17:16:14","slug":"remove-background-from-image-free-tool","status":"publish","type":"page","link":"https:\/\/nel-media.com\/en\/remove-background-from-image-free-tool","title":{"rendered":"Remove Background from Image Free &#8211; Online Background Remover"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-background is-layout-constrained wp-container-core-group-is-layout-42b66ced wp-block-group-is-layout-constrained\" style=\"background-color:#008080;min-height:0px;margin-top:0;margin-bottom:0;padding-top:3.5rem;padding-right:5%;padding-bottom:3.5rem;padding-left:5%\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-5020e097 wp-block-columns-is-layout-flex\" style=\"margin-bottom:0rem;padding-bottom:0rem\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<p class=\"has-text-color has-link-color wp-elements-1 wp-block-paragraph\" style=\"color:#f6e7bf;margin-bottom:15px;font-style:normal;font-weight:500\"><em>NELMEDIA<\/em><\/p>\n\n\n\n<h1 id=\"the-perfect-theme-for-stunning-websites\" class=\"wp-block-heading has-palette-color-8-color has-text-color has-link-color wp-elements-2\" style=\"margin-top:0;margin-bottom:20px;font-size:clamp(27.894px, 1.743rem + ((1vw - 3.2px) * 1.571), 48px);\">Remove Background from Image Free &#8211; Online Background Remover<\/h1>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-3 wp-block-paragraph\">Need to <strong>remove the background from an image<\/strong> fast, without Photoshop and without installing any extra software?<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"padding-top:0;padding-right:0;padding-bottom:0;padding-left:0\">\n<figure class=\"wp-block-image aligncenter size-full has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/nel-media.com\/en\/wp-content\/uploads\/2026\/09\/Remove-background-from-image-free-online-\u2013-hand-removing-background-from-a-photo.jpg\" alt=\"Remove background from image free online \u2013 hand removing background from a photo\" class=\"has-border-color wp-image-4559\" style=\"border-color:#f1da9b;border-width:3px;border-top-left-radius:20px;border-top-right-radius:20px;border-bottom-left-radius:20px;border-bottom-right-radius:0px\" srcset=\"https:\/\/nel-media.com\/en\/wp-content\/uploads\/2026\/09\/Remove-background-from-image-free-online-\u2013-hand-removing-background-from-a-photo.jpg 500w, https:\/\/nel-media.com\/en\/wp-content\/uploads\/2026\/09\/Remove-background-from-image-free-online-\u2013-hand-removing-background-from-a-photo-300x300.jpg 300w, https:\/\/nel-media.com\/en\/wp-content\/uploads\/2026\/09\/Remove-background-from-image-free-online-\u2013-hand-removing-background-from-a-photo-150x150.jpg 150w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull max-width: 800px; margin-left: auto; margin-right: padding-left: 0 !important; padding-right: has-border-color has-cyan-bluish-gray-border-color has-palette-color-8-background-color has-background is-layout-constrained wp-container-core-group-is-layout-250c8cd2 wp-block-group-is-layout-constrained\" style=\"border-width:2px;margin-top:0rem;margin-bottom:0rem;padding-top:3.5rem;padding-right:5%;padding-bottom:3.5rem;padding-left:5%\">\n<p class=\"wp-block-paragraph\">Our <strong>free background remover<\/strong> does all the work for you. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Just upload a photo, wait a few seconds, and download the finished result as a PNG &#8211; ready to use on a website, in a presentation, on an Etsy or Amazon listing, on a resume, or anywhere else you need an image with no background.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The tool uses an advanced AI model that recognizes the main subject in the photo and cuts it out from the background with precision, with no manual selection or eraser tools required.<\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-luminous-vivid-amber-border-color is-layout-constrained wp-container-core-group-is-layout-7aa65ebf wp-block-group-is-layout-constrained\" style=\"border-width:3px;border-top-left-radius:18px;border-top-right-radius:18px;border-bottom-left-radius:18px;border-bottom-right-radius:18px;margin-top:var(--wp--preset--spacing--60);margin-bottom:var(--wp--preset--spacing--60);padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30);box-shadow:var(--wp--preset--shadow--deep)\">\n<div id=\"bg-remover\" style=\"max-width:800px;margin:40px auto;font-family:system-ui,sans-serif;text-align:center;\">\n  <h2>Remove Background from Image for Free<\/h2>\n  <p style=\"color:#666;margin-bottom:20px;\">Everything runs right in your browser \u2013 private and free.<\/p>\n\n  <button id=\"start-btn\" style=\"padding:14px 32px;background:#2563eb;color:white;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;\">\n    Start Tool\n  <\/button>\n\n  <div id=\"tool-area\" style=\"display:none;margin-top:30px;\">\n    <div id=\"drop-zone\" style=\"border:2px dashed #94a3b8;border-radius:12px;padding:50px 20px;background:#f8fafc;cursor:pointer;margin-bottom:20px;\">\n      <div style=\"font-size:18px;color:#334155;margin-bottom:6px;\">Drag an image here<\/div>\n      <div style=\"font-size:14px;color:#64748b;\">or click to select<\/div>\n    <\/div>\n\n    <input type=\"file\" id=\"upload\" accept=\"image\/*\" style=\"display:none;\">\n\n    <div id=\"preview-area\" style=\"display:none;margin-bottom:20px;\">\n      <div id=\"selected-preview\"><\/div>\n      <div style=\"margin-top:16px;display:flex;gap:12px;justify-content:center;\">\n        <button id=\"process-btn\" style=\"padding:12px 24px;background:#16a34a;color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;\">Remove Background<\/button>\n        <button id=\"clear-btn\" style=\"padding:12px 24px;background:#ef4444;color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;\">Remove Image<\/button>\n      <\/div>\n    <\/div>\n\n    <p id=\"status\" style=\"margin:16px 0;font-weight:500;\"><\/p>\n\n    <div id=\"result-area\" style=\"display:none;margin-top:30px;\">\n      <div style=\"display:flex;gap:20px;justify-content:center;align-items:flex-start;\">\n        <div style=\"flex:1 1 0;min-width:0;max-width:360px;\">\n          <div style=\"font-weight:600;color:#64748b;margin-bottom:8px;\">Before<\/div>\n          <div id=\"before-box\"><\/div>\n        <\/div>\n        <div style=\"flex:1 1 0;min-width:0;max-width:360px;\">\n          <div style=\"font-weight:600;color:#16a34a;margin-bottom:8px;\">After<\/div>\n          <div id=\"after-box\"><\/div>\n        <\/div>\n      <\/div>\n      <div id=\"download-box\" style=\"margin-top:20px;display:flex;gap:12px;justify-content:center;\"><\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<script type=\"module\">\n\/\/ Model loading + inference run inside a Web Worker so the main thread\n\/\/ stays responsive and Chrome never shows a \"Page Unresponsive\" warning.\n\nconst workerSource = `\nimport { AutoModel, AutoProcessor, RawImage, env } from \"https:\/\/cdn.jsdelivr.net\/npm\/@huggingface\/transformers@3.0.2\";\n\nenv.allowLocalModels = false;\nenv.useBrowserCache = true;\n\nlet model = null;\nlet processor = null;\n\nself.onmessage = async (e) => {\n  const { type, file } = e.data;\n\n  if (type === \"load\") {\n    try {\n      model = await AutoModel.from_pretrained(\"briaai\/RMBG-1.4\", {\n        config: { model_type: \"custom\" },\n        dtype: \"fp32\"\n      });\n      processor = await AutoProcessor.from_pretrained(\"briaai\/RMBG-1.4\", {\n        config: {\n          do_normalize: true,\n          do_pad: false,\n          do_rescale: true,\n          do_resize: true,\n          image_mean: [0.5, 0.5, 0.5],\n          image_std: [1, 1, 1],\n          size: { width: 1024, height: 1024 }\n        }\n      });\n      self.postMessage({ type: \"loaded\" });\n    } catch (err) {\n      self.postMessage({ type: \"error\", message: err.message });\n    }\n    return;\n  }\n\n  if (type === \"process\") {\n    try {\n      const image = await RawImage.fromBlob(file);\n      const { pixel_values } = await processor(image);\n      const { output } = await model({ input: pixel_values });\n      const mask = await RawImage.fromTensor(output[0].mul(255).to(\"uint8\")).resize(image.width, image.height);\n\n      \/\/ Build an RGBA buffer straight from the SAME decoded image used for\n      \/\/ inference, so there is no second, independent decode on the main\n      \/\/ thread that could subtly mismatch pixel-for-pixel with the mask\n      \/\/ (that mismatch is what causes faint edge artifacts).\n      const { width, height, channels, data } = image;\n      const rgba = new Uint8ClampedArray(width * height * 4);\n      for (let i = 0, p = 0; i < width * height; i++, p += channels) {\n        const r = data[p];\n        const g = channels > 1 ? data[p + 1] : r;\n        const b = channels > 2 ? data[p + 2] : r;\n        rgba[i * 4] = r;\n        rgba[i * 4 + 1] = g;\n        rgba[i * 4 + 2] = b;\n        rgba[i * 4 + 3] = 255;\n      }\n\n      const maskBuffer = mask.data.buffer;\n      const rgbaBuffer = rgba.buffer;\n      self.postMessage(\n        { type: \"done\", width, height, maskBuffer, rgbaBuffer },\n        [maskBuffer, rgbaBuffer]\n      );\n    } catch (err) {\n      self.postMessage({ type: \"error\", message: err.message });\n    }\n  }\n};\n`;\n\nconst workerBlob = new Blob([workerSource], { type: \"text\/javascript\" });\nconst workerUrl = URL.createObjectURL(workerBlob);\nconst worker = new Worker(workerUrl, { type: \"module\" });\n\nconst startBtn = document.getElementById(\"start-btn\");\nconst toolArea = document.getElementById(\"tool-area\");\nconst dropZone = document.getElementById(\"drop-zone\");\nconst upload = document.getElementById(\"upload\");\nconst previewArea = document.getElementById(\"preview-area\");\nconst selectedPreview = document.getElementById(\"selected-preview\");\nconst processBtn = document.getElementById(\"process-btn\");\nconst clearBtn = document.getElementById(\"clear-btn\");\nconst status = document.getElementById(\"status\");\nconst resultArea = document.getElementById(\"result-area\");\nconst beforeBox = document.getElementById(\"before-box\");\nconst afterBox = document.getElementById(\"after-box\");\nconst downloadBox = document.getElementById(\"download-box\");\n\nlet currentFile = null;\nlet modelReady = false;\n\nworker.onmessage = (e) => {\n  const { type } = e.data;\n\n  if (type === \"loaded\") {\n    modelReady = true;\n    status.textContent = \"Ready! Select or drag an image.\";\n    status.style.color = \"#16a34a\";\n    startBtn.style.display = \"none\";\n  }\n\n  if (type === \"error\") {\n    status.textContent = \"Error: \" + e.data.message;\n    status.style.color = \"#dc2626\";\n    startBtn.disabled = false;\n    startBtn.textContent = \"Try Again\";\n    processBtn.disabled = false;\n    clearBtn.disabled = false;\n  }\n\n  if (type === \"done\") {\n    finishProcessing(e.data.width, e.data.height, e.data.maskBuffer, e.data.rgbaBuffer);\n  }\n};\n\nstartBtn.addEventListener(\"click\", () => {\n  startBtn.disabled = true;\n  startBtn.textContent = \"Loading model...\";\n  toolArea.style.display = \"block\";\n  status.textContent = \"Loading AI model (first time takes 30-90 seconds)...\";\n  status.style.color = \"#333\";\n  worker.postMessage({ type: \"load\" });\n});\n\nfunction handleFile(file) {\n  if (!file || !file.type.startsWith(\"image\/\")) return;\n  currentFile = file;\n  resultArea.style.display = \"none\";\n  status.textContent = \"\";\n\n  const reader = new FileReader();\n  reader.onload = function (e) {\n    selectedPreview.innerHTML = '<img decoding=\"async\" src=\"' + e.target.result + '\" style=\"max-width:100%;max-height:380px;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,0.1);\">';\n    previewArea.style.display = \"block\";\n    dropZone.style.display = \"none\";\n  };\n  reader.readAsDataURL(file);\n}\n\ndropZone.addEventListener(\"click\", () => upload.click());\ndropZone.addEventListener(\"dragover\", (e) => { e.preventDefault(); dropZone.style.borderColor = \"#2563eb\"; dropZone.style.background = \"#eff6ff\"; });\ndropZone.addEventListener(\"dragleave\", () => { dropZone.style.borderColor = \"#94a3b8\"; dropZone.style.background = \"#f8fafc\"; });\ndropZone.addEventListener(\"drop\", (e) => {\n  e.preventDefault();\n  dropZone.style.borderColor = \"#94a3b8\";\n  dropZone.style.background = \"#f8fafc\";\n  handleFile(e.dataTransfer.files[0]);\n});\nupload.addEventListener(\"change\", (e) => handleFile(e.target.files[0]));\n\nfunction resetAll() {\n  currentFile = null;\n  selectedPreview.innerHTML = \"\";\n  beforeBox.innerHTML = \"\";\n  afterBox.innerHTML = \"\";\n  downloadBox.innerHTML = \"\";\n  previewArea.style.display = \"none\";\n  dropZone.style.display = \"block\";\n  resultArea.style.display = \"none\";\n  status.textContent = \"Ready! Select or drag an image.\";\n  status.style.color = \"#16a34a\";\n  upload.value = \"\";\n}\n\nclearBtn.addEventListener(\"click\", resetAll);\n\nprocessBtn.addEventListener(\"click\", () => {\n  if (!currentFile || !modelReady) return;\n\n  processBtn.disabled = true;\n  clearBtn.disabled = true;\n  status.textContent = \"Processing image...\";\n  status.style.color = \"#333\";\n\n  worker.postMessage({ type: \"process\", file: currentFile });\n});\n\nfunction finishProcessing(width, height, maskBuffer, rgbaBuffer) {\n  try {\n    const maskData = new Uint8Array(maskBuffer);\n    const baseRgba = new Uint8ClampedArray(rgbaBuffer);\n\n    \/\/ Before - drawn straight from the pixels the AI model actually saw,\n    \/\/ no second decode on the main thread\n    const beforeCanvas = document.createElement(\"canvas\");\n    beforeCanvas.width = width;\n    beforeCanvas.height = height;\n    beforeCanvas.getContext(\"2d\").putImageData(new ImageData(baseRgba.slice(), width, height), 0, 0);\n    beforeCanvas.style.maxWidth = \"100%\";\n    beforeCanvas.style.height = \"auto\";\n    beforeCanvas.style.borderRadius = \"8px\";\n    beforeBox.innerHTML = \"\";\n    beforeBox.appendChild(beforeCanvas);\n\n    \/\/ After - same pixel buffer, alpha channel replaced with the mask\n    const afterRgba = baseRgba.slice();\n    for (let i = 0; i < maskData.length; i++) {\n      afterRgba[i * 4 + 3] = maskData[i];\n    }\n    const afterCanvas = document.createElement(\"canvas\");\n    afterCanvas.width = width;\n    afterCanvas.height = height;\n    afterCanvas.getContext(\"2d\").putImageData(new ImageData(afterRgba, width, height), 0, 0);\n    afterCanvas.style.maxWidth = \"100%\";\n    afterCanvas.style.height = \"auto\";\n    afterCanvas.style.borderRadius = \"8px\";\n    afterBox.innerHTML = \"\";\n    afterBox.appendChild(afterCanvas);\n\n    \/\/ Download\n    downloadBox.innerHTML = \"\";\n    const a = document.createElement(\"a\");\n    a.href = afterCanvas.toDataURL(\"image\/png\");\n    a.download = \"image-no-background.png\";\n    a.textContent = \"Download PNG\";\n    a.style.cssText = \"display:inline-block;padding:12px 28px;background:#16a34a;color:white;text-decoration:none;border-radius:8px;font-weight:600;\";\n    downloadBox.appendChild(a);\n\n    const resetBtn = document.createElement(\"button\");\n    resetBtn.textContent = \"Remove Image\";\n    resetBtn.style.cssText = \"padding:12px 24px;background:#ef4444;color:white;border:none;border-radius:8px;font-weight:600;cursor:pointer;\";\n    resetBtn.addEventListener(\"click\", resetAll);\n    downloadBox.appendChild(resetBtn);\n\n    previewArea.style.display = \"none\";\n    resultArea.style.display = \"block\";\n    status.textContent = \"Done!\";\n    status.style.color = \"#16a34a\";\n  } catch (err) {\n    status.textContent = \"Error: \" + err.message;\n    status.style.color = \"#dc2626\";\n  } finally {\n    processBtn.disabled = false;\n    clearBtn.disabled = false;\n  }\n}\n<\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">How to Use the Background Remover<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The tool is designed to be simple, with no learning curve:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Start the tool<\/strong> \u2013 click the \"Start Tool\" button to load the AI model needed for processing.<\/li>\n\n\n\n<li><strong>Upload an image<\/strong> \u2013 drag a photo into the drop area or click to choose a file from your device.<\/li>\n\n\n\n<li><strong>Remove the background<\/strong> \u2013 click \"Remove Background\" and let the tool process the image automatically.<\/li>\n\n\n\n<li><strong>Download the result<\/strong> \u2013 once processing is done, you'll see a before\/after comparison. Click \"Download PNG\" to save the finished image to your device.<\/li>\n\n\n\n<li>Want to process another image? Just click \"Remove Image\" to start over.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Your Photos Stay Private - Everything Runs in Your Browser<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Unlike most similar tools, this <strong>background remover never uploads your images to any server<\/strong>. The entire process \u2014 from loading the AI model to cutting out the background - happens locally, right inside your browser. That means:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>your photos never leave your device,<\/li>\n\n\n\n<li>there's no sign-up or personal information required,<\/li>\n\n\n\n<li>you can use the tool completely free, with no limit on the number of images.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Processing Speed Depends on Your Browser and Device<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Since all the processing happens locally, <strong>speed depends on how powerful your computer is and which browser you're using<\/strong>. In general, newer Chromium-based browsers (Google Chrome, Microsoft Edge, Opera) process images faster thanks to better support for the technologies running behind the scenes. On older devices or slower connections, the first launch (loading the AI model) may take a bit longer, but every image after that processes much faster.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A Quick Note<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This background remover may not work perfectly on images with lots of fine transitions (like flyaway hair or fur) or images with heavy filters applied. That said, even paid software struggles with those same edge cases.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">About the Tool<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This tool uses AI-powered background removal - the <strong><a href=\"https:\/\/huggingface.co\/briaai\/RMBG-1.4\" target=\"_blank\" rel=\"noopener\">BRIA Background Removal v1.4 model<\/a><\/strong>. If you're curious about the technical details behind it, you can find more information at the link above.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We hope this free background remover makes life easier for lots of people - online store owners, content creators, freelancers, or anyone who just needs to quickly clean up a photo now and then.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It might not be the fastest tool of its kind, but it's free.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is just one of the tools we're planning to offer, so stay tuned - more free tools are coming soon to the Nelmedia website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Got an idea for a tool you'd like to see?<\/strong> Leave it in the comments.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><em>Check Out Our Other Free Tools<\/em><\/h3>\n\n\n\n<ul style=\"line-height:2\" class=\"wp-block-list\">\n<li><a href=\"https:\/\/nel-media.com\/en\/free-online-calculators\"><strong><em>Free Online Calculators<\/em><\/strong><\/a><\/li>\n\n\n\n<li><em><a href=\"https:\/\/nel-media.com\/en\/free-qr-generator-tool\" data-type=\"link\" data-id=\"https:\/\/nel-media.com\/en\/free-qr-generator-tool\"><strong>Free QR Code Generator<\/strong><\/a> <\/em><\/li>\n\n\n\n<li><a href=\"https:\/\/nel-media.com\/en\/\"><strong><em>Back to Homepage<\/em><\/strong><\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>NELMEDIA Remove Background from Image Free &#8211; Online Background Remover Need to remove the background from an image fast, without Photoshop and without installing any extra software? Our free background remover does all the work for you. Just upload a photo, wait a few seconds, and download the finished result as a PNG &#8211; ready [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-4558","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":8}},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Darko Nelson","author_link":"https:\/\/nel-media.com\/en\/author\/enadmin"},"uagb_comment_info":0,"uagb_excerpt":"NELMEDIA Remove Background from Image Free &#8211; Online Background Remover Need to remove the background from an image fast, without Photoshop and without installing any extra software? Our free background remover does all the work for you. Just upload a photo, wait a few seconds, and download the finished result as a PNG &#8211; ready&hellip;","_links":{"self":[{"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/pages\/4558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/comments?post=4558"}],"version-history":[{"count":7,"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/pages\/4558\/revisions"}],"predecessor-version":[{"id":4564,"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/pages\/4558\/revisions\/4564"}],"wp:attachment":[{"href":"https:\/\/nel-media.com\/en\/wp-json\/wp\/v2\/media?parent=4558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}