{"id":8522,"date":"2025-08-28T20:41:18","date_gmt":"2025-08-28T13:41:18","guid":{"rendered":"https:\/\/danielepais.com\/journal\/?p=8522"},"modified":"2025-08-28T20:59:06","modified_gmt":"2025-08-28T13:59:06","slug":"build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage","status":"publish","type":"post","link":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/","title":{"rendered":"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage"},"content":{"rendered":"<img width=\"850\" height=\"400\" src=\"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg\" class=\"dp-featured-image\" alt=\"Build a Simple Chrome Extension An AppSumo Wishlist with Local Storage\" loading=\"lazy\" decoding=\"async\" srcset=\"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg 850w, https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage-300x141.jpg 300w, https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage-700x329.jpg 700w, https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage-768x361.jpg 768w\" sizes=\"(max-width: 850px) 100vw, 850px\" \/>\n<p>&nbsp;<\/p>\n<p>Have you ever found an interesting deal on AppSumo, copied the link somewhere, and then completely forgot about it? This small Chrome extension solves that problem. It lets you <strong> search AppSumo directly<\/strong>, <strong> save deals (name + link) <\/strong> into local storage, and later <strong> edit, delete, export, or import <\/strong> them.<\/p>\n<p>The best part: it\u2019s <strong> offline <\/strong> and requires no Google <a href=\"https:\/\/danielepais.com\/journal\/how-to-resize-and-optimize-images-for-the-web-using-adobe-photoshop\/\">Web<\/a> Store publishing. You load it locally, and it just works.<\/p>\n<p>\u26a1 <strong>Note on privacy<\/strong>: this extension runs entirely from your local Chrome installation. All your saved data is stored in <strong><code>chrome.storage.local<\/code><\/strong> (a sandboxed storage area inside your browser). Nothing is ever uploaded to an external server. This means you keep <strong>full control of your data<\/strong>, unlike many extensions that sync or send analytics to third parties.<\/p>\n<p>In this tutorial, I\u2019ll show you step by step <a href=\"https:\/\/danielepais.com\/journal\/ip-cameras-how-to\/\">how to<\/a> build it with <strong> HTML, <a href=\"https:\/\/danielepais.com\/journal\/how-to-modify-a-drupal-block-via-its-css\/\">CSS<\/a>, and JavaScript <\/strong> using <strong> Manifest V3<\/strong>.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a6863966f98f\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #18bc9c;color:#18bc9c\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #18bc9c;color:#18bc9c\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a6863966f98f\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_1_%E2%80%93_Set_up_the_project_folder\" >Step 1 \u2013 Set up the project folder<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_2_%E2%80%93_The_manifestjson\" >Step 2 \u2013 The manifest.json<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_3_%E2%80%93_The_popuphtml\" >Step 3 \u2013 The popup.html<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_4_%E2%80%93_The_popupcss\" >Step 4 \u2013 The popup.css<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_5_%E2%80%93_The_popupjs\" >Step 5 \u2013 The popup.js<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_6_%E2%80%93_Load_the_extension_in_Chrome\" >Step 6 \u2013 Load the extension in Chrome<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_7_%E2%80%93_Use_it\" >Step 7 \u2013 Use it!<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Step_8_%E2%80%93_Extend_it_further\" >Step 8 \u2013 Extend it further<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#Conclusion\" >Conclusion<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Step_1_%E2%80%93_Set_up_the_project_folder\"><\/span>Step 1 \u2013 Set up the project folder<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Create a new folder, e.g. <code> appsumo-wishlist-ext\/<\/code>. Inside it, you\u2019ll have four core files:<\/p>\n<ul>\n<li>\n<p><code> manifest.json <\/code><\/p>\n<\/li>\n<li>\n<p><code> popup.html <\/code><\/p>\n<\/li>\n<li>\n<p><code> popup.css <\/code><\/p>\n<\/li>\n<li>\n<p><code> popup.js <\/code><\/p>\n<\/li>\n<\/ul>\n<p>Optionally, you can also include icons (<code>icon16.png<\/code>, <code> icon48.png<\/code>, <code> icon128.png<\/code>).<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Step_2_%E2%80%93_The_manifestjson\"><\/span>Step 2 \u2013 The manifest.json<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Every Chrome extension starts with a manifest. Ours is simple:<\/p>\n<blockquote>\n<pre><code>\r\n{\r\n  \"manifest_version\": 3,\r\n  \"name\": \"AppSumo Wishlist (Local)\",\r\n  \"version\": \"1.0.0\",\r\n  \"description\": \"Search AppSumo and save deals locally (offline).\",\r\n  \"action\": {\r\n    \"default_popup\": \"popup.html\",\r\n    \"default_title\": \"AppSumo Wishlist\"\r\n  },\r\n  \"permissions\": [\"storage\"],\r\n  \"icons\": {\r\n    \"16\": \"icon16.png\",\r\n    \"48\": \"icon48.png\",\r\n    \"128\": \"icon128.png\"\r\n  }\r\n}\r\n\r\n<\/code><\/pre>\n<\/blockquote>\n<p>We only need the <strong>storage<\/strong> permission (to save data locally).<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Step_3_%E2%80%93_The_popuphtml\"><\/span>Step 3 \u2013 The popup.html<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>This is the small UI that appears when you click the extension icon in Chrome.<\/p>\n<blockquote>\n<pre><code>\r\n&lt;!doctype html&gt;\r\n&lt;html lang=\"en\"&gt;\r\n&lt;head&gt;\r\n\u00a0 &lt;meta charset=\"utf-8\" \/&gt;\r\n\u00a0 &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/&gt;\r\n\u00a0 &lt;title&gt;AppSumo Wishlist&lt;\/title&gt;\r\n\u00a0 &lt;link rel=\"stylesheet\" href=\"popup.css\" \/&gt;\r\n&lt;\/head&gt;\r\n&lt;body&gt;\r\n\u00a0 &lt;header&gt;\r\n\u00a0 \u00a0 &lt;h1&gt;AppSumo Wishlist&lt;\/h1&gt;\r\n\u00a0 &lt;\/header&gt;\r\n\u00a0 &lt;main&gt;\r\n\u00a0 \u00a0 &lt;form id=\"addForm\" autocomplete=\"off\"&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;label&gt;Software name\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;input id=\"name\" type=\"text\" placeholder=\"NeuronWriter\" required \/&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;\/label&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;label&gt;AppSumo URL (optional)\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;input id=\"link\" type=\"url\" placeholder=\"https:\/\/appsumo.com\/products\/...\" \/&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;\/label&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;div class=\"buttons\"&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;a id=\"search\" class=\"btn\"\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0href=\"https:\/\/appsumo.com\/search\/?query=\"\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0target=\"_blank\" rel=\"noopener\"&gt;Search AppSumo&lt;\/a&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;button type=\"submit\" class=\"primary\"&gt;Save&lt;\/button&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;\/div&gt;\r\n\u00a0 \u00a0 &lt;\/form&gt;\r\n\r\n\u00a0 \u00a0 &lt;section id=\"list\"&gt;&lt;\/section&gt;\r\n\r\n\u00a0 \u00a0 &lt;section class=\"tools\"&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;div class=\"row\"&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;button id=\"export\"&gt;Export&lt;\/button&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;button id=\"clear\" class=\"danger\"&gt;Clear All&lt;\/button&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;\/div&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;div class=\"paste\"&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;label for=\"pasteJson\"&gt;Paste JSON to import&lt;\/label&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;textarea id=\"pasteJson\" placeholder='Paste exported JSON here'&gt;&lt;\/textarea&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;div class=\"row\"&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 &lt;button id=\"importPaste\"&gt;Import Pasted JSON&lt;\/button&gt;\r\n\u00a0 \u00a0 \u00a0 \u00a0 &lt;\/div&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;\/div&gt;\r\n\u00a0 \u00a0 \u00a0 &lt;div id=\"status\" class=\"status\" aria-live=\"polite\"&gt;&lt;\/div&gt;\r\n\u00a0 \u00a0 &lt;\/section&gt;\r\n\u00a0 &lt;\/main&gt;\r\n\u00a0 &lt;script src=\"popup.js\" defer&gt;&lt;\/script&gt;\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;\r\n<\/code><\/pre>\n<\/blockquote>\n<p>Notice the <strong>Search AppSumo<\/strong> link. This is just an <code>&lt;a&gt;<\/code> tag that dynamically updates based on your input.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Step_4_%E2%80%93_The_popupcss\"><\/span>Step 4 \u2013 The popup.css<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>A bit of styling to make it look clean and modern.<\/p>\n<blockquote>\n<pre><code>\r\n:root{--bg:#0f172a;--txt:#e5e7eb;--muted:#94a3b8;--ring:#1f2937;--accent:#22c55e;--danger:#ef4444}\r\nbody{margin:0;background:linear-gradient(180deg,var(--bg),#050a16);color:var(--txt);font:14px system-ui}\r\nheader{padding:10px 12px;border-bottom:1px solid #111827}\r\nh1{margin:0;font-size:15px}\r\nmain{width:360px;max-width:360px;padding:12px}\r\nlabel{display:block;font-size:12px;color:var(--muted);margin:8px 0 4px}\r\ninput,textarea{width:100%;background:#0b1220;border:1px solid var(--ring);color:var(--txt);border-radius:8px;padding:8px}\r\n.buttons{display:flex;gap:8px;justify-content:flex-end;margin:8px 0}\r\nbutton,.btn{border:1px solid #1f2937;background:#0d1320;color:var(--txt);padding:8px 10px;border-radius:8px;cursor:pointer;text-decoration:none}\r\nbutton.primary{background:linear-gradient(180deg,#22c55e,#16a34a);border-color:#14532d}\r\nbutton.danger{background:linear-gradient(180deg,#ef4444,#b91c1c);border-color:#7f1d1d}\r\n.listItem{background:#0c1322;border:1px solid #111827;border-radius:12px;padding:8px;margin:8px 0}\r\n.status{margin-top:8px;color:#94a3b8;font-size:12px;min-height:18px}\r\n<\/code><\/pre>\n<\/blockquote>\n<h2><span class=\"ez-toc-section\" id=\"Step_5_%E2%80%93_The_popupjs\"><\/span>Step 5 \u2013 The popup.js<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Here\u2019s where the logic lives: saving, editing, deleting, exporting, and importing.<\/p>\n<blockquote>\n<pre><code>\r\nconst $ = s =&gt; document.querySelector(s);\r\nconst KEY = 'appsumo_wishlist_v1';\r\nconst fmt = ts =&gt; new Date(ts).toLocaleString();\r\n\r\nfunction setStatus(msg, ok = true) {\r\n  const el = $('#status');\r\n  el.textContent = msg || '';\r\n  el.style.color = ok ? '#a7f3d0' : '#fca5a5';\r\n  if (msg) setTimeout(() =&gt; { el.textContent = ''; }, 2500);\r\n}\r\n\r\nfunction getItems(){ return new Promise(r=&gt; chrome.storage.local.get([KEY], o=&gt; r(o[KEY]||[]))); }\r\nfunction setItems(items){ return new Promise(r=&gt; chrome.storage.local.set({[KEY]:items}, r)); }\r\n\r\nfunction escapeHtml(s=''){ return s.replace(\/[&amp;&lt;&gt;\"']\/g, c=&gt;({\"&amp;\":\"&amp;\",\"&lt;\":\"&lt;\",\"&gt;\":\"&gt;\",\"\\\"\":\"\"\",\"'\":\"'\"})); }\r\n\r\nfunction buildSearchUrl(term){ return `https:\/\/appsumo.com\/search\/?query=${encodeURIComponent(term||'')}`; }\r\n\r\nfunction render(items){\r\n  const list = $('#list');\r\n  list.innerHTML = '';\r\n  if(!items.length){ list.innerHTML = '&lt;p style=\"color:#94a3b8\"&gt;No items yet.&lt;\/p&gt;'; return; }\r\n  items.forEach((it,i)=&gt;{\r\n    const el=document.createElement('div'); el.className='listItem';\r\n    el.innerHTML=`&lt;div class=\"row\"&gt;\r\n      &lt;div&gt;\r\n        &lt;div class=\"name\"&gt;${escapeHtml(it.name)}&lt;\/div&gt;\r\n        &lt;div class=\"url\"&gt;${it.link?`&lt;a href=\"${escapeHtml(it.link)}\" target=\"_blank\"&gt;${escapeHtml(it.link)}&lt;\/a&gt;`:'&lt;span style=\"color:#94a3b8\"&gt;(no link yet)&lt;\/span&gt;'}&lt;\/div&gt;\r\n        &lt;div class=\"badge\"&gt;${fmt(it.ts)}&lt;\/div&gt;\r\n      &lt;\/div&gt;\r\n      &lt;div class=\"actions\"&gt;\r\n        &lt;button data-act=\"open\" data-i=\"${i}\"&gt;Open&lt;\/button&gt;\r\n        &lt;button data-act=\"copy\" data-i=\"${i}\"&gt;Copy&lt;\/button&gt;\r\n        &lt;button data-act=\"edit\" data-i=\"${i}\"&gt;Edit&lt;\/button&gt;\r\n        &lt;button data-act=\"del\" data-i=\"${i}\" class=\"danger\"&gt;Del&lt;\/button&gt;\r\n      &lt;\/div&gt;\r\n    &lt;\/div&gt;`;\r\n    list.appendChild(el);\r\n  });\r\n}\r\n\r\nfunction updateSearchHref(){ $('#search').setAttribute('href', buildSearchUrl($('#name').value)); }\r\n\r\nfunction init(){\r\n  getItems().then(render);\r\n  $('#name').addEventListener('input', updateSearchHref);\r\n  $('#search').addEventListener('click', updateSearchHref);\r\n  updateSearchHref();\r\n\r\n  $('#addForm').addEventListener('submit', async e=&gt;{\r\n    e.preventDefault();\r\n    const name=$('#name').value.trim();\r\n    const link=$('#link').value.trim();\r\n    if(!name){ setStatus('Enter a name', false); return; }\r\n    if(link &amp;&amp; !\/^https?:\\\\\/\\\\\/\/i.test(link)){ setStatus('Invalid link', false); return; }\r\n    const items=await getItems();\r\n    items.unshift({name,link,ts:Date.now()});\r\n    await setItems(items); render(items);\r\n    e.target.reset(); updateSearchHref(); setStatus('Saved \u2714');\r\n  });\r\n\r\n  $('#list').addEventListener('click', async e=&gt;{\r\n    const b=e.target.closest('button'); if(!b) return;\r\n    const i=+b.dataset.i; const act=b.dataset.act;\r\n    const items=await getItems(); const it=items[i]; if(!it) return;\r\n    if(act==='open'){ if(it.link) window.open(it.link,'_blank'); }\r\n    if(act==='copy'){ await navigator.clipboard.writeText(it.link||it.name); b.textContent='Copied'; setTimeout(()=&gt;b.textContent='Copy',900); }\r\n    if(act==='edit'){ const newName=prompt('Edit name',it.name)||it.name; const newLink=prompt('Edit link',it.link)||it.link; items[i]={...it,name:newName,link:newLink}; await setItems(items); render(items); }\r\n    if(act==='del'){ if(confirm('Delete?')){ items.splice(i,1); await setItems(items); render(items);} }\r\n  });\r\n\r\n  $('#export').addEventListener('click', async ()=&gt;{\r\n    const items=await getItems();\r\n    const blob=new Blob([JSON.stringify(items,null,2)],{type:'application\/json'});\r\n    const url=URL.createObjectURL(blob);\r\n    const a=document.createElement('a'); a.href=url; a.download='appsumo-wishlist.json'; a.click(); URL.revokeObjectURL(url);\r\n  });\r\n\r\n  $('#importPaste').addEventListener('click', async ()=&gt;{\r\n    try{\r\n      const text=$('#pasteJson').value.trim(); if(!text) throw new Error('Nothing to import');\r\n      const arr=JSON.parse(text); if(!Array.isArray(arr)) throw new Error('Expected array');\r\n      const cleaned=arr.map(x=&gt;({name:x.name||'',link:x.link||'',ts:x.ts||Date.now()})).filter(x=&gt;x.name);\r\n      if(!cleaned.length) throw new Error('No valid items');\r\n      await setItems(cleaned); render(cleaned); $('#pasteJson').value=''; setStatus(`Imported ${cleaned.length} items \u2714`);\r\n    }catch(err){ setStatus('Import failed: '+err.message,false); }\r\n  });\r\n\r\n  $('#clear').addEventListener('click', async ()=&gt;{ if(confirm('Clear all?')){ await setItems([]); render([]); } });\r\n}\r\ndocument.addEventListener('DOMContentLoaded', init);\r\n<\/code><\/pre>\n<\/blockquote>\n<h2><span class=\"ez-toc-section\" id=\"Step_6_%E2%80%93_Load_the_extension_in_Chrome\"><\/span>Step 6 \u2013 Load the extension in Chrome<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ol>\n<li>\n<p>Open <code>chrome:\/\/extensions<\/code><\/p>\n<\/li>\n<li>\n<p>Enable <strong>Developer mode<\/strong> (toggle in top right)<\/p>\n<\/li>\n<li>\n<p>Click <strong>Load unpacked<\/strong><\/p>\n<\/li>\n<li>\n<p>Select your <code>appsumo-wishlist-ext\/ folder<\/code><\/p>\n<\/li>\n<li>\n<p>Pin the extension (puzzle icon \u2192 pin)<\/p>\n<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/ywAAAAAAQABAAACAUwAOw==\" fifu-lazy=\"1\" fifu-data-sizes=\"auto\" fifu-data-srcset=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/eaa9b4187a90\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=75&h=0&c=0 75w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/8fb6201a9a8c\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=100&h=0&c=0 100w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/00cc60a15f6b\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=150&h=0&c=0 150w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/4965aecb800e\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=240&h=0&c=0 240w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/dd8cfe7bb7cb\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=320&h=0&c=0 320w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/74f6212d887a\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=500&h=0&c=0 500w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/3c5c35a5b3c0\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=640&h=0&c=0 640w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/1cdd028aa1d6\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=800&h=0&c=0 800w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/0139b4ac30ac\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1024&h=0&c=0 1024w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/b9f537d1d8c1\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1280&h=0&c=0 1280w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/8e31643f1fd9\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1600&h=0&c=0 1600w\" class=\"alignnone wp-image-8535 size-full\" title=\"Appsumo chrome extension pinned on toolbar\" fifu-data-src=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLWNocm9tZS1leHRlbnNpb24tcGlubmVkLW9uLXRvb2xiYXIuanBn\/669423feaf1f\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522\" alt=\"Appsumo chrome extension pinned on toolbar\" width=\"501\" height=\"152\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/ywAAAAAAQABAAACAUwAOw==\" fifu-lazy=\"1\" fifu-data-sizes=\"auto\" fifu-data-srcset=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/d128f6e05da7\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=75&h=0&c=0 75w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/ae0ac3f4a94f\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=100&h=0&c=0 100w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/2781fa324e88\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=150&h=0&c=0 150w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/2dd0a81ba50f\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=240&h=0&c=0 240w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/ffd6ee38df98\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=320&h=0&c=0 320w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/46d5f58e1bdd\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=500&h=0&c=0 500w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/b765836bcff7\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=640&h=0&c=0 640w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/b1d1a4a39b27\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=800&h=0&c=0 800w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/299dfe02935e\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1024&h=0&c=0 1024w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/28da5556913b\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1280&h=0&c=0 1280w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/799fec8cf689\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1600&h=0&c=0 1600w\" class=\"alignnone wp-image-8536 size-full\" title=\"Appsumo Chrome Extension with loaded items\" fifu-data-src=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLXdpc2hsaXN0LWVtcHR5LnBuZw\/8c1318fa08cc\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522\" alt=\"Appsumo wishlist empty\" width=\"468\" height=\"698\" \/><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Step_7_%E2%80%93_Use_it\"><\/span>Step 7 \u2013 Use it!<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>\n<p>Type a software name, click <strong>Search AppSumo<\/strong> \u2192 a new browser tab opens with results.<\/p>\n<\/li>\n<li>\n<p>Copy the page link for the software you want to <a href=\"https:\/\/danielepais.com\/journal\/add-a-new-layer-photoshop-daily-tips-shortcut-master\/\">add<\/a> to your wish list, then paste the deal link in the input box and hit <strong>Save<\/strong>.<\/p>\n<\/li>\n<li>\n<p>Manage your list: Open, Copy, Edit, Delete.<\/p>\n<\/li>\n<li>\n<p>Export to JSON or Import by pasting JSON.<\/p>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/ywAAAAAAQABAAACAUwAOw==\" fifu-lazy=\"1\" fifu-data-sizes=\"auto\" fifu-data-srcset=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/611ad7056c6d\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=75&h=0&c=0 75w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/5d57fcabf538\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=100&h=0&c=0 100w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/54d577e1c661\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=150&h=0&c=0 150w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/6b64b089f3b1\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=240&h=0&c=0 240w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/f99372acbaae\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=320&h=0&c=0 320w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/0b1c19e8ff26\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=500&h=0&c=0 500w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/6f2ee491bd85\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=640&h=0&c=0 640w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/1a7344831e2d\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=800&h=0&c=0 800w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/5cfc420418fd\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1024&h=0&c=0 1024w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/c0383516b6f4\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1280&h=0&c=0 1280w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/a4c737a42acd\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1600&h=0&c=0 1600w\" class=\"alignnone size-full wp-image-8534\" title=\"Appsumo Chrome Extension with loaded items\" fifu-data-src=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLUNocm9tZS1FeHRlbnNpb24td2l0aC1sb2FkZWQtaXRlbXMucG5n\/a15c53037ac9\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522\" alt=\"Appsumo Chrome Extension with loaded items\" width=\"468\" height=\"768\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/ywAAAAAAQABAAACAUwAOw==\" fifu-lazy=\"1\" fifu-data-sizes=\"auto\" fifu-data-srcset=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/e492e8d617c3\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=75&h=0&c=0 75w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/36f4a150f0ba\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=100&h=0&c=0 100w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/c5bdf1297d77\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=150&h=0&c=0 150w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/1a6f782f0c51\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=240&h=0&c=0 240w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/8711f6a73a53\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=320&h=0&c=0 320w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/ed9ab504c78f\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=500&h=0&c=0 500w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/438105b07eb2\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=640&h=0&c=0 640w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/04b17e5b2d84\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=800&h=0&c=0 800w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/c5a6f5dc98a2\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1024&h=0&c=0 1024w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/4b2fda5c5739\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1280&h=0&c=0 1280w, https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/05cabe1441b2\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522&w=1600&h=0&c=0 1600w\" class=\"alignnone size-full wp-image-8537\" title=\"Appsumo Wishlist Chrome Extension Import json\" fifu-data-src=\"https:\/\/wp.fifu.app\/danielepais.com\/aHR0cHM6Ly9kYW5pZWxlcGFpcy5jb20vam91cm5hbC93cC1jb250ZW50L3VwbG9hZHMvMjAyNS8wOC9BcHBzdW1vLVdpc2hsaXN0LUNocm9tZS1FeHRlbnNpb24tSW1wb3J0LWpzb24ucG5n\/148191230030\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage.webp?p=8522\" alt=\"Appsumo Wishlist Chrome Extension Import json\" width=\"468\" height=\"768\" \/><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Step_8_%E2%80%93_Extend_it_further\"><\/span>Step 8 \u2013 Extend it further<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>You now have a <strong>fully working wishlist manager<\/strong>.<\/p>\n<p>Extensions you could add later:<\/p>\n<ul>\n<li>\n<p>\u201cSave Current Tab\u201d button<\/p>\n<\/li>\n<li>\n<p>Tags \/ notes<\/p>\n<\/li>\n<li>\n<p>Right-click context menu integration<\/p>\n<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>This little project shows how easy it is to build a <strong>Chrome extension with local storage<\/strong> using nothing but HTML, CSS, and JavaScript. It\u2019s a practical tool for keeping track of AppSumo deals \u2014 but the pattern can be reused for any kind of wishlist or link manager.<\/p>\n<p>And because it runs <strong>locally<\/strong>, your wishlist stays private: no external APIs, no hidden tracking, no data leaks. It\u2019s yours and only yours.<\/p>\n<p>\ud83d\udc49 You can download the ready-to-use extension [<strong>click the button below<\/strong>].<\/p>\n<p><a class=\"cta-download\" href=\"https:\/\/danielepais.com\/journal\/free-downloads\/\" rel=\"noopener\" aria-label=\"Download the resource files (ZIP)\"> \u2b07\ufe0f Download resource files<\/a><\/p>\n<hr \/>\n<div class=\"su-note\"  style=\"border-color:#14a78f;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#2EC1A9;border-color:#faffff;color:#fff;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><strong>Disclaimer:<\/strong> This project is not affiliated with, endorsed by, or connected in any way to AppSumo. We simply appreciate the platform and created this extension as a personal tool for organizing deals. All trademarks and product names are the property of their respective owners.<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.<\/p>\n","protected":false},"author":1,"featured_media":8530,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[561],"tags":[],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Daniele Pais\"\/>\n\t<meta name=\"google-site-verification\" content=\"googleb91c9505ed997b99\" \/>\n\t<meta name=\"msvalidate.01\" content=\"AD1C96C338E051848BE08C67378B20CA\" \/>\n\t<meta name=\"keywords\" content=\"web development\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Daniele Pais Blog\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"AppSumo Wishlist: Build a Chrome Extension Local Storage\" \/>\n\t\t<meta property=\"og:description\" content=\"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"850\" \/>\n\t\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-08-28T13:41:18+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-08-28T13:59:06+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@daniele_pais\" \/>\n\t\t<meta name=\"twitter:title\" content=\"AppSumo Wishlist: Build a Chrome Extension Local Storage\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2017\/10\/daniele-pais-digital-design.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#article\",\"name\":\"AppSumo Wishlist: Build a Chrome Extension Local Storage\",\"headline\":\"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage\",\"author\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/author\\\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg\",\"width\":850,\"height\":400,\"caption\":\"Build a Simple Chrome Extension An AppSumo Wishlist with Local Storage\"},\"datePublished\":\"2025-08-28T20:41:18+07:00\",\"dateModified\":\"2025-08-28T20:59:06+07:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#webpage\"},\"articleSection\":\"Web Development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/danielepais.com\\\/journal\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/#listItem\",\"name\":\"Web\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/#listItem\",\"position\":2,\"name\":\"Web\",\"item\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/web-development\\\/#listItem\",\"name\":\"Web Development\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/web-development\\\/#listItem\",\"position\":3,\"name\":\"Web Development\",\"item\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/web-development\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#listItem\",\"name\":\"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/#listItem\",\"name\":\"Web\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#listItem\",\"position\":4,\"name\":\"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/category\\\/web\\\/web-development\\\/#listItem\",\"name\":\"Web Development\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/#person\",\"name\":\"Daniele Pais\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/86bedf0ab24a6d4a4f32de230cc797ef?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Daniele Pais\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/author\\\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\\\/#author\",\"url\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/author\\\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\\\/\",\"name\":\"Daniele Pais\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/86bedf0ab24a6d4a4f32de230cc797ef?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Daniele Pais\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#webpage\",\"url\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/\",\"name\":\"AppSumo Wishlist: Build a Chrome Extension Local Storage\",\"description\":\"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/author\\\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/author\\\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#mainImage\",\"width\":850,\"height\":400,\"caption\":\"Build a Simple Chrome Extension An AppSumo Wishlist with Local Storage\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\\\/#mainImage\"},\"datePublished\":\"2025-08-28T20:41:18+07:00\",\"dateModified\":\"2025-08-28T20:59:06+07:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/#website\",\"url\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/\",\"name\":\"Phuket Web Design\",\"description\":\"Digital Print\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/danielepais.com\\\/journal\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"AppSumo Wishlist: Build a Chrome Extension Local Storage","description":"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.","canonical_url":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/","robots":"max-image-preview:large","keywords":"web development","webmasterTools":{"google-site-verification":"googleb91c9505ed997b99","msvalidate.01":"AD1C96C338E051848BE08C67378B20CA","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#article","name":"AppSumo Wishlist: Build a Chrome Extension Local Storage","headline":"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage","author":{"@id":"https:\/\/danielepais.com\/journal\/author\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\/#author"},"publisher":{"@id":"https:\/\/danielepais.com\/journal\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg","width":850,"height":400,"caption":"Build a Simple Chrome Extension An AppSumo Wishlist with Local Storage"},"datePublished":"2025-08-28T20:41:18+07:00","dateModified":"2025-08-28T20:59:06+07:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#webpage"},"isPartOf":{"@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#webpage"},"articleSection":"Web Development"},{"@type":"BreadcrumbList","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal#listItem","position":1,"name":"Home","item":"https:\/\/danielepais.com\/journal","nextItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/#listItem","name":"Web"}},{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/#listItem","position":2,"name":"Web","item":"https:\/\/danielepais.com\/journal\/category\/web\/","nextItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/web-development\/#listItem","name":"Web Development"},"previousItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/web-development\/#listItem","position":3,"name":"Web Development","item":"https:\/\/danielepais.com\/journal\/category\/web\/web-development\/","nextItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#listItem","name":"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage"},"previousItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/#listItem","name":"Web"}},{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#listItem","position":4,"name":"Build a Simple Chrome Extension: An AppSumo Wishlist with Local Storage","previousItem":{"@type":"ListItem","@id":"https:\/\/danielepais.com\/journal\/category\/web\/web-development\/#listItem","name":"Web Development"}}]},{"@type":"Person","@id":"https:\/\/danielepais.com\/journal\/#person","name":"Daniele Pais","image":{"@type":"ImageObject","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/86bedf0ab24a6d4a4f32de230cc797ef?s=96&d=mm&r=g","width":96,"height":96,"caption":"Daniele Pais"}},{"@type":"Person","@id":"https:\/\/danielepais.com\/journal\/author\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\/#author","url":"https:\/\/danielepais.com\/journal\/author\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\/","name":"Daniele Pais","image":{"@type":"ImageObject","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/86bedf0ab24a6d4a4f32de230cc797ef?s=96&d=mm&r=g","width":96,"height":96,"caption":"Daniele Pais"}},{"@type":"WebPage","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#webpage","url":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/","name":"AppSumo Wishlist: Build a Chrome Extension Local Storage","description":"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/danielepais.com\/journal\/#website"},"breadcrumb":{"@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#breadcrumblist"},"author":{"@id":"https:\/\/danielepais.com\/journal\/author\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\/#author"},"creator":{"@id":"https:\/\/danielepais.com\/journal\/author\/_-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2-2--2\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg","@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#mainImage","width":850,"height":400,"caption":"Build a Simple Chrome Extension An AppSumo Wishlist with Local Storage"},"primaryImageOfPage":{"@id":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/#mainImage"},"datePublished":"2025-08-28T20:41:18+07:00","dateModified":"2025-08-28T20:59:06+07:00"},{"@type":"WebSite","@id":"https:\/\/danielepais.com\/journal\/#website","url":"https:\/\/danielepais.com\/journal\/","name":"Phuket Web Design","description":"Digital Print","inLanguage":"en-US","publisher":{"@id":"https:\/\/danielepais.com\/journal\/#person"}}]},"og:locale":"en_US","og:site_name":"Daniele Pais Blog","og:type":"article","og:title":"AppSumo Wishlist: Build a Chrome Extension Local Storage","og:description":"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.","og:url":"https:\/\/danielepais.com\/journal\/build-a-simple-chrome-extension-an-appsumo-wishlist-with-local-storage\/","og:image":"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg","og:image:secure_url":"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2025\/08\/Build-a-Simple-Chrome-Extension-An-AppSumo-Wishlist-with-Local-Storage.jpg","og:image:width":850,"og:image:height":400,"article:published_time":"2025-08-28T13:41:18+00:00","article:modified_time":"2025-08-28T13:59:06+00:00","twitter:card":"summary","twitter:site":"@daniele_pais","twitter:title":"AppSumo Wishlist: Build a Chrome Extension Local Storage","twitter:description":"Learn how to create an AppSumo Wishlist Chrome extension with local storage. Save, edit, and manage your favorite deals directly in your browser.","twitter:image":"https:\/\/danielepais.com\/journal\/wp-content\/uploads\/2017\/10\/daniele-pais-digital-design.png"},"aioseo_meta_data":{"post_id":"8522","title":"AppSumo Wishlist: Build a Chrome Extension Local Storage","description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"AppSumo Wishlist","score":69,"analysis":{"keyphraseInTitle":{"score":9,"maxScore":9,"error":0},"keyphraseInDescription":{"score":9,"maxScore":9,"error":0},"keyphraseLength":{"score":9,"maxScore":9,"error":0,"length":2},"keyphraseInURL":{"score":5,"maxScore":5,"error":0},"keyphraseInIntroduction":{"score":3,"maxScore":9,"error":1},"keyphraseInSubHeadings":{"score":3,"maxScore":9,"error":1},"keyphraseInImageAlt":{"score":9,"maxScore":9,"error":0},"keywordDensity":{"score":0,"type":"low","maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2025-08-28 11:24:26","updated":"2025-08-28 14:00:54","ai":null,"seo_analyzer_scan_date":null},"fifu_redirection_url":"https:\/\/pixabay.com\/videos\/search\/cute baby monkey\/","_links":{"self":[{"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/posts\/8522"}],"collection":[{"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/comments?post=8522"}],"version-history":[{"count":0,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/posts\/8522\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/media\/8530"}],"wp:attachment":[{"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/media?parent=8522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/categories?post=8522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/danielepais.com\/journal\/wp-json\/wp\/v2\/tags?post=8522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}