{"id":842,"date":"2026-08-02T04:29:01","date_gmt":"2026-08-02T04:29:01","guid":{"rendered":"https:\/\/freewebtools.co.in\/?page_id=842"},"modified":"2026-08-02T04:37:07","modified_gmt":"2026-08-02T04:37:07","slug":"notes-formatter","status":"publish","type":"page","link":"https:\/\/freewebtools.co.in\/index.php\/notes-formatter\/","title":{"rendered":"Notes Formatter"},"content":{"rendered":"\n<div id=\"nfg-complete-root\">\n<style>\n#nfg-complete-root {\n  --bg-app: #0f172a;\n  --bg-panel: #1e293b;\n  --bg-surface: #334155;\n  --bg-hover: #475569;\n  --text-main: #f8fafc;\n  --text-muted: #94a3b8;\n  --accent: #3b82f6;\n  --accent-hover: #2563eb;\n  --border: #475569;\n  --success: #22c55e;\n  --warning: #eab308;\n  --danger: #ef4444;\n  --font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  \n  all: initial;\n  display: block;\n  font-family: var(--font-family);\n  color: var(--text-main);\n  background: var(--bg-app);\n  font-size: 14px;\n  line-height: 1.5;\n  width: 100%;\n  box-sizing: border-box;\n  position: relative;\n  z-index: 999;\n  padding: 16px;\n  border-radius: 12px;\n  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3);\n}\n\n#nfg-complete-root *, #nfg-complete-root *::before, #nfg-complete-root *::after {\n  box-sizing: border-box;\n  margin: 0;\n  padding: 0;\n}\n\n#nfg-complete-root .nfg-app-container {\n  display: flex;\n  flex-direction: column;\n  height: 85vh;\n  min-height: 650px;\n  background: var(--bg-app);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  overflow: hidden;\n}\n\n#nfg-complete-root .nfg-top-nav {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  background: var(--bg-panel);\n  padding: 8px 16px;\n  border-bottom: 1px solid var(--border);\n}\n\n#nfg-complete-root .nfg-brand {\n  font-weight: 700;\n  font-size: 16px;\n  color: var(--text-main);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n\n#nfg-complete-root .nfg-nav-tools {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  flex-wrap: wrap;\n}\n\n#nfg-complete-root .nfg-btn {\n  background: var(--bg-surface);\n  color: var(--text-main);\n  border: 1px solid var(--border);\n  padding: 6px 12px;\n  border-radius: 4px;\n  cursor: pointer;\n  font-size: 13px;\n  font-weight: 500;\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  transition: background 0.2s, border-color 0.2s;\n}\n\n#nfg-complete-root .nfg-btn:hover {\n  background: var(--bg-hover);\n  border-color: var(--text-muted);\n}\n\n#nfg-complete-root .nfg-btn-primary {\n  background: var(--accent);\n  border-color: var(--accent);\n}\n\n#nfg-complete-root .nfg-btn-primary:hover {\n  background: var(--accent-hover);\n}\n\n#nfg-complete-root .nfg-toolbar {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 4px;\n  background: var(--bg-panel);\n  padding: 6px 12px;\n  border-bottom: 1px solid var(--border);\n  align-items: center;\n}\n\n#nfg-complete-root .nfg-toolbar-separator {\n  width: 1px;\n  height: 24px;\n  background: var(--border);\n  margin: 0 4px;\n}\n\n#nfg-complete-root .nfg-select, #nfg-complete-root .nfg-input-sm {\n  background: var(--bg-surface);\n  color: var(--text-main);\n  border: 1px solid var(--border);\n  padding: 4px 8px;\n  border-radius: 4px;\n  font-size: 13px;\n}\n\n#nfg-complete-root .nfg-main-layout {\n  display: flex;\n  flex: 1;\n  overflow: hidden;\n  position: relative;\n}\n\n#nfg-complete-root .nfg-sidebar {\n  width: 260px;\n  background: var(--bg-panel);\n  border-right: 1px solid var(--border);\n  display: flex;\n  flex-direction: column;\n  transition: width 0.3s;\n}\n\n#nfg-complete-root .nfg-sidebar-header {\n  padding: 12px;\n  border-bottom: 1px solid var(--border);\n  font-weight: 600;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n\n#nfg-complete-root .nfg-sidebar-content {\n  flex: 1;\n  overflow-y: auto;\n  padding: 8px;\n}\n\n#nfg-complete-root .nfg-note-item {\n  padding: 8px 12px;\n  border-radius: 4px;\n  cursor: pointer;\n  margin-bottom: 4px;\n  font-size: 13px;\n  white-space: nowrap;\n  overflow: hidden;\n  text-overflow: ellipsis;\n}\n\n#nfg-complete-root .nfg-note-item:hover {\n  background: var(--bg-surface);\n}\n\n#nfg-complete-root .nfg-note-item.active {\n  background: var(--accent);\n  color: #fff;\n}\n\n#nfg-complete-root .nfg-editor-workspace {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  background: var(--bg-app);\n  overflow: hidden;\n}\n\n#nfg-complete-root .nfg-split-view {\n  display: flex;\n  flex: 1;\n  overflow: hidden;\n}\n\n#nfg-complete-root .nfg-pane {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  overflow: hidden;\n  border-right: 1px solid var(--border);\n}\n\n#nfg-complete-root .nfg-pane:last-child {\n  border-right: none;\n}\n\n#nfg-complete-root .nfg-pane-header {\n  background: var(--bg-panel);\n  padding: 6px 12px;\n  font-size: 12px;\n  font-weight: 600;\n  color: var(--text-muted);\n  border-bottom: 1px solid var(--border);\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n}\n\n#nfg-complete-root .nfg-textarea, #nfg-complete-root .nfg-preview {\n  flex: 1;\n  background: var(--bg-app);\n  color: var(--text-main);\n  border: none;\n  padding: 16px;\n  font-family: inherit;\n  font-size: 15px;\n  line-height: 1.6;\n  resize: none;\n  outline: none;\n  overflow-y: auto;\n}\n\n#nfg-complete-root .nfg-preview {\n  background: #ffffff;\n  color: #0f172a;\n}\n\n#nfg-complete-root .nfg-statusbar {\n  background: var(--bg-panel);\n  border-top: 1px solid var(--border);\n  padding: 6px 16px;\n  font-size: 12px;\n  color: var(--text-muted);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n\n#nfg-complete-root .nfg-modal-backdrop {\n  position: absolute;\n  top: 0; left: 0; right: 0; bottom: 0;\n  background: rgba(0, 0, 0, 0.6);\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  z-index: 1000;\n}\n\n#nfg-complete-root .nfg-modal {\n  background: var(--bg-panel);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  width: 450px;\n  max-width: 90%;\n  padding: 20px;\n  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5);\n}\n\n#nfg-complete-root .nfg-modal-title {\n  font-size: 16px;\n  font-weight: 600;\n  margin-bottom: 12px;\n}\n\n#nfg-complete-root .nfg-modal-body {\n  margin-bottom: 16px;\n  font-size: 13px;\n  color: var(--text-muted);\n}\n\n#nfg-complete-root .nfg-modal-footer {\n  display: flex;\n  justify-content: flex-end;\n  gap: 8px;\n}\n\n#nfg-complete-root .nfg-hidden {\n  display: none !important;\n}\n\n\/* Themes *\/\n#nfg-complete-root.theme-notebook {\n  --bg-app: #fef3c7;\n  --bg-panel: #fde68a;\n  --bg-surface: #fcd34d;\n  --text-main: #78350f;\n  --text-muted: #92400e;\n  --border: #f59e0b;\n}\n\n#nfg-complete-root.theme-minimal {\n  --bg-app: #ffffff;\n  --bg-panel: #f8fafc;\n  --bg-surface: #f1f5f9;\n  --text-main: #0f172a;\n  --text-muted: #64748b;\n  --border: #e2e8f0;\n}\n\n#nfg-complete-root.theme-academic {\n  --bg-app: #fdfbf7;\n  --bg-panel: #f4efe6;\n  --bg-surface: #eae3d2;\n  --text-main: #292524;\n  --text-muted: #57534e;\n  --border: #d6ccc2;\n}\n\n\/* Formatted Elements inside Preview *\/\n#nfg-complete-root .nfg-preview h1 { font-size: 2rem; margin-bottom: 12px; font-weight: 700; border-bottom: 2px solid #e2e8f0; padding-bottom: 8px; }\n#nfg-complete-root .nfg-preview h2 { font-size: 1.5rem; margin-top: 16px; margin-bottom: 8px; font-weight: 600; }\n#nfg-complete-root .nfg-preview h3 { font-size: 1.25rem; margin-top: 14px; margin-bottom: 6px; font-weight: 600; }\n#nfg-complete-root .nfg-preview p { margin-bottom: 10px; }\n#nfg-complete-root .nfg-preview blockquote { border-left: 4px solid var(--accent); padding-left: 12px; margin: 10px 0; color: #475569; font-style: italic; }\n#nfg-complete-root .nfg-preview pre { background: #f1f5f9; padding: 10px; border-radius: 4px; font-family: monospace; overflow-x: auto; margin: 10px 0; }\n#nfg-complete-root .nfg-preview code { background: #f1f5f9; padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em; }\n#nfg-complete-root .nfg-preview ul, #nfg-complete-root .nfg-preview ol { padding-left: 20px; margin-bottom: 10px; }\n#nfg-complete-root .nfg-preview table { width: 100%; border-collapse: collapse; margin: 12px 0; }\n#nfg-complete-root .nfg-preview th, #nfg-complete-root .nfg-preview td { border: 1px solid #cbd5e1; padding: 8px; text-align: left; }\n#nfg-complete-root .nfg-preview th { background: #f1f5f9; }\n<\/style>\n\n<div class=\"nfg-app-container\">\n  <!-- Top Navigation & Global Controls -->\n  <div class=\"nfg-top-nav\">\n    <div class=\"nfg-brand\">\n      <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"><\/path><polyline points=\"14 2 14 8 20 8\"><\/polyline><line x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"><\/line><line x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"><\/line><polyline points=\"10 9 9 9 8 9\"><\/polyline><\/svg>\n      Notes Formatter &#038; Generator Pro\n    <\/div>\n    <div class=\"nfg-nav-tools\">\n      <select id=\"nfg-theme-select\" class=\"nfg-select\">\n        <option value=\"default\">Dark Mode<\/option>\n        <option value=\"minimal\">Minimal Light<\/option>\n        <option value=\"notebook\">Notebook Yellow<\/option>\n        <option value=\"academic\">Academic Warm<\/option>\n      <\/select>\n      <button class=\"nfg-btn\" id=\"nfg-btn-toggle-sidebar\" title=\"Toggle Sidebar\">Sidebar<\/button>\n      <button class=\"nfg-btn\" id=\"nfg-btn-auto-format\" title=\"Auto Format Notes\">Auto Format<\/button>\n      <button class=\"nfg-btn nfg-btn-primary\" id=\"nfg-btn-export\" title=\"Export Notes\">Export<\/button>\n    <\/div>\n  <\/div>\n\n  <!-- Formatting Toolbar -->\n  <div class=\"nfg-toolbar\">\n    <button class=\"nfg-btn\" data-action=\"bold\" title=\"Bold\"><b>B<\/b><\/button>\n    <button class=\"nfg-btn\" data-action=\"italic\" title=\"Italic\"><i>I<\/i><\/button>\n    <button class=\"nfg-btn\" data-action=\"underline\" title=\"Underline\"><u>U<\/u><\/button>\n    <button class=\"nfg-btn\" data-action=\"strike\" title=\"Strikethrough\"><s>S<\/s><\/button>\n    <div class=\"nfg-toolbar-separator\"><\/div>\n    <button class=\"nfg-btn\" data-action=\"h1\" title=\"Heading 1\">H1<\/button>\n    <button class=\"nfg-btn\" data-action=\"h2\" title=\"Heading 2\">H2<\/button>\n    <button class=\"nfg-btn\" data-action=\"h3\" title=\"Heading 3\">H3<\/button>\n    <button class=\"nfg-btn\" data-action=\"quote\" title=\"Blockquote\">\u201c<\/button>\n    <button class=\"nfg-btn\" data-action=\"code\" title=\"Code Block\">&lt;\/&gt;<\/button>\n    <div class=\"nfg-toolbar-separator\"><\/div>\n    <button class=\"nfg-btn\" data-action=\"ul\" title=\"Bullet List\">\u2022 List<\/button>\n    <button class=\"nfg-btn\" data-action=\"ol\" title=\"Numbered List\">1. List<\/button>\n    <button class=\"nfg-btn\" data-action=\"table\" title=\"Insert Table\">Table<\/button>\n    <button class=\"nfg-btn\" data-action=\"hr\" title=\"Horizontal Rule\">\u2014<\/button>\n    <div class=\"nfg-toolbar-separator\"><\/div>\n    <select id=\"nfg-template-select\" class=\"nfg-select\">\n      <option value=\"\">&#8212; Quick Styles &#038; Templates &#8212;<\/option>\n      <option value=\"lecture\">Standard Lecture Notes<\/option>\n      <option value=\"cornell\">Cornell Template<\/option>\n      <option value=\"summary\">Summary &#038; Key Points<\/option>\n    <\/select>\n    <button class=\"nfg-btn\" id=\"nfg-btn-clear\" title=\"Clear Editor\">Clear<\/button>\n  <\/div>\n\n  <!-- Main Layout Workspace -->\n  <div class=\"nfg-main-layout\">\n    <!-- Sidebar \/ Notes List -->\n    <div id=\"nfg-sidebar\" class=\"nfg-sidebar\">\n      <div class=\"nfg-sidebar-header\">\n        <span>Saved Notes<\/span>\n        <button class=\"nfg-btn\" id=\"nfg-btn-new-note\">+ New<\/button>\n      <\/div>\n      <div id=\"nfg-notes-list\" class=\"nfg-sidebar-content\">\n        <!-- Dynamic list items -->\n      <\/div>\n    <\/div>\n\n    <!-- Workspace & Split View -->\n    <div class=\"nfg-editor-workspace\">\n      <div id=\"nfg-split-container\" class=\"nfg-split-view\">\n        <!-- Editor Pane -->\n        <div class=\"nfg-pane\">\n          <div class=\"nfg-pane-header\">Markdown \/ Raw Editor<\/div>\n          <textarea id=\"nfg-textarea\" class=\"nfg-textarea\" placeholder=\"Start typing or paste notes here...\"><\/textarea>\n        <\/div>\n        <!-- Live Preview Pane -->\n        <div class=\"nfg-pane\">\n          <div class=\"nfg-pane-header\">Formatted Live Preview<\/div>\n          <div id=\"nfg-preview\" class=\"nfg-preview\"><\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Status Bar -->\n      <div class=\"nfg-statusbar\">\n        <div id=\"nfg-stats-info\">Words: 0 | Characters: 0 | Reading Time: 0 min<\/div>\n        <div id=\"nfg-autosave-status\">All changes saved<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<!-- Export Modal -->\n<div id=\"nfg-modal-export\" class=\"nfg-modal-backdrop nfg-hidden\">\n  <div class=\"nfg-modal\">\n    <div class=\"nfg-modal-title\">Export Notes<\/div>\n    <div class=\"nfg-modal-body\">\n      <p style=\"margin-bottom: 10px;\">Select your preferred output format:<\/p>\n      <div style=\"display: flex; flex-direction: column; gap: 8px;\">\n        <button class=\"nfg-btn\" id=\"nfg-export-txt\">Download as TXT<\/button>\n        <button class=\"nfg-btn\" id=\"nfg-export-html\">Download as HTML File<\/button>\n        <button class=\"nfg-btn\" id=\"nfg-export-print\">Print \/ PDF Layout<\/button>\n      <\/div>\n    <\/div>\n    <div class=\"nfg-modal-footer\">\n      <button class=\"nfg-btn\" id=\"nfg-modal-close\">Close<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function() {\n  \"use strict\";\n\n  var root = document.getElementById(\"nfg-complete-root\");\n  if (!root) return;\n\n  var textarea = root.querySelector(\"#nfg-textarea\");\n  var preview = root.querySelector(\"#nfg-preview\");\n  var statsInfo = root.querySelector(\"#nfg-stats-info\");\n  var autosaveStatus = root.querySelector(\"#nfg-autosave-status\");\n  var sidebar = root.querySelector(\"#nfg-sidebar\");\n  var notesListContainer = root.querySelector(\"#nfg-notes-list\");\n  \n  var notes = JSON.parse(localStorage.getItem(\"nfg_notes\") || \"[]\");\n  var currentNoteIndex = 0;\n\n  if (notes.length === 0) {\n    notes.push({ title: \"Welcome Note\", content: \"# Welcome to Notes Formatter Pro\\n\\nStart typing or pasting your notes here. Use the auto-format feature to automatically organize raw text into clear headings, lists, and summaries!\" });\n  }\n\n  function saveToStorage() {\n    localStorage.setItem(\"nfg_notes\", JSON.stringify(notes));\n    autosaveStatus.textContent = \"Saved locally\";\n    setTimeout(function() { autosaveStatus.textContent = \"All changes saved\"; }, 1500);\n  }\n\n  function renderNotesList() {\n    notesListContainer.innerHTML = \"\";\n    notes.forEach(function(note, idx) {\n      var item = document.createElement(\"div\");\n      item.className = \"nfg-note-item\" + (idx === currentNoteIndex ? \" active\" : \"\");\n      item.textContent = note.title || \"Untitled Note\";\n      item.addEventListener(\"click\", function() {\n        currentNoteIndex = idx;\n        loadCurrentNote();\n        renderNotesList();\n      });\n      notesListContainer.appendChild(item);\n    });\n  }\n\n  function loadCurrentNote() {\n    textarea.value = notes[currentNoteIndex].content || \"\";\n    updatePreviewAndStats();\n  }\n\n  function updatePreviewAndStats() {\n    var text = textarea.value;\n    notes[currentNoteIndex].content = text;\n    \n    \/\/ Extract title from first line if possible\n    var firstLine = text.split(\"\\n\")[0].replace(\/^[#\\*\\-\\s]+\/, \"\");\n    notes[currentNoteIndex].title = firstLine || \"Untitled Note\";\n\n    \/\/ Simple Markdown parsing for preview\n    var html = text\n      .replace(\/^# (.*$)\/gm, '<h1>$1<\/h1>')\n      .replace(\/^## (.*$)\/gm, '<h2>$1<\/h2>')\n      .replace(\/^### (.*$)\/gm, '<h3>$1<\/h3>')\n      .replace(\/\\*\\*(.*?)\\*\\*\/g, '<b>$1<\/b>')\n      .replace(\/\\*(.*?)\\*\/g, '<i>$1<\/i>')\n      .replace(\/`(.*?)`\/g, '<code>$1<\/code>')\n      .replace(\/^\\> (.*$)\/gm, '<blockquote>$1<\/blockquote>')\n      .replace(\/^\\- (.*$)\/gm, '<li>$1<\/li>')\n      .replace(\/\\n\\n\/g, '<\/p><p>');\n\n    preview.innerHTML = '<p>' + html + '<\/p>';\n\n    \/\/ Stats calculation\n    var words = text.trim() ? text.trim().split(\/\\s+\/).length : 0;\n    var chars = text.length;\n    var readingTime = Math.ceil(words \/ 200);\n    statsInfo.textContent = \"Words: \" + words + \" | Characters: \" + chars + \" | Reading Time: \" + readingTime + \" min\";\n\n    saveToStorage();\n  }\n\n  \/\/ Formatting Actions Toolbar\n  root.querySelectorAll(\".nfg-toolbar button[data-action]\").forEach(function(btn) {\n    btn.addEventListener(\"click\", function() {\n      var action = btn.getAttribute(\"data-action\");\n      var start = textarea.selectionStart;\n      var end = textarea.selectionEnd;\n      var val = textarea.value;\n      var selectedText = val.substring(start, end);\n      var replacement = \"\";\n\n      if (action === \"bold\") replacement = \"**\" + (selectedText || \"bold text\") + \"**\";\n      else if (action === \"italic\") replacement = \"*\" + (selectedText || \"italic text\") + \"*\";\n      else if (action === \"underline\") replacement = \"<u>\" + (selectedText || \"underlined text\") + \"<\/u>\";\n      else if (action === \"strike\") replacement = \"~~\" + (selectedText || \"strikethrough\") + \"~~\";\n      else if (action === \"h1\") replacement = \"\\n# \" + (selectedText || \"Heading 1\") + \"\\n\";\n      else if (action === \"h2\") replacement = \"\\n## \" + (selectedText || \"Heading 2\") + \"\\n\";\n      else if (action === \"h3\") replacement = \"\\n### \" + (selectedText || \"Heading 3\") + \"\\n\";\n      else if (action === \"quote\") replacement = \"\\n> \" + (selectedText || \"Blockquote text\") + \"\\n\";\n      else if (action === \"code\") replacement = \"\\n`\" + (selectedText || \"code snippet\") + \"`\\n\";\n      else if (action === \"ul\") replacement = \"\\n- \" + (selectedText || \"List item\") + \"\\n\";\n      else if (action === \"ol\") replacement = \"\\n1. \" + (selectedText || \"List item\") + \"\\n\";\n      else if (action === \"table\") replacement = \"\\n| Header 1 | Header 2 |\\n| --- | --- |\\n| Cell 1 | Cell 2 |\\n\";\n      else if (action === \"hr\") replacement = \"\\n---\\n\";\n\n      textarea.value = val.substring(0, start) + replacement + val.substring(end);\n      updatePreviewAndStats();\n      textarea.focus();\n    });\n  });\n\n  \/\/ Auto Formatting Feature\n  root.querySelector(\"#nfg-btn-auto-format\").addEventListener(\"click\", function() {\n    var raw = textarea.value;\n    var lines = raw.split(\"\\n\");\n    var formatted = \"# Auto-Formatted Notes\\n\\n\";\n    lines.forEach(function(line, idx) {\n      var clean = line.trim();\n      if (!clean) return;\n      if (idx === 0) {\n        formatted += \"## \" + clean + \"\\n\\n\";\n      } else if (clean.endsWith(\":\")) {\n        formatted += \"### \" + clean + \"\\n\";\n      } else {\n        formatted += \"- \" + clean + \"\\n\";\n      }\n    });\n    textarea.value = formatted;\n    updatePreviewAndStats();\n  });\n\n  \/\/ Template Loader\n  root.querySelector(\"#nfg-template-select\").addEventListener(\"change\", function(e) {\n    var val = e.target.value;\n    if (val === \"lecture\") {\n      textarea.value = \"# Lecture Title\\n\\n## Key Objectives\\n- Objective 1\\n\\n## Main Notes\\n- Detailed breakdown of topic...\\n\\n## Summary\\nSummary statement here.\";\n    } else if (val === \"cornell\") {\n      textarea.value = \"# Cornell Notes\\n\\n## Cues \/ Questions\\n- Key concept?\\n\\n## Notes\\n- Comprehensive explanation and details...\";\n    } else if (val === \"summary\") {\n      textarea.value = \"# Summary & Key Takeaways\\n\\n## Executive Summary\\nOverview paragraph...\\n\\n## Key Points\\n- Point A\\n- Point B\";\n    }\n    updatePreviewAndStats();\n    e.target.value = \"\";\n  });\n\n  \/\/ Sidebar Toggle\n  root.querySelector(\"#nfg-btn-toggle-sidebar\").addEventListener(\"click\", function() {\n    var sb = root.querySelector(\"#nfg-sidebar\");\n    sb.classList.toggle(\"nfg-hidden\");\n  });\n\n  \/\/ New Note\n  root.querySelector(\"#nfg-btn-new-note\").addEventListener(\"click\", function() {\n    notes.unshift({ title: \"New Note\", content: \"# New Note\\n\\nWrite your notes here...\" });\n    currentNoteIndex = 0;\n    renderNotesList();\n    loadCurrentNote();\n  });\n\n  \/\/ Clear Editor\n  root.querySelector(\"#nfg-btn-clear\").addEventListener(\"click\", function() {\n    if (confirm(\"Clear current note content?\")) {\n      textarea.value = \"\";\n      updatePreviewAndStats();\n    }\n  });\n\n  \/\/ Theme Switcher\n  root.querySelector(\"#nfg-theme-select\").addEventListener(\"change\", function(e) {\n    root.className = \"\";\n    if (e.target.value !== \"default\") {\n      root.classList.add(\"theme-\" + e.target.value);\n    }\n  });\n\n  \/\/ Export Modal Handling\n  var exportModal = root.querySelector(\"#nfg-modal-export\");\n  root.querySelector(\"#nfg-btn-export\").addEventListener(\"click\", function() { exportModal.classList.remove(\"nfg-hidden\"); });\n  root.querySelector(\"#nfg-modal-close\").addEventListener(\"click\", function() { exportModal.classList.add(\"nfg-hidden\"); });\n\n  root.querySelector(\"#nfg-export-txt\").addEventListener(\"click\", function() {\n    var blob = new Blob([textarea.value], { type: \"text\/plain;charset=utf-8\" });\n    var url = URL.createObjectURL(blob);\n    var a = document.createElement(\"a\");\n    a.href = url;\n    a.download = \"notes.txt\";\n    a.click();\n  });\n\n  root.querySelector(\"#nfg-export-html\").addEventListener(\"click\", function() {\n    var blob = new Blob([preview.innerHTML], { type: \"text\/html;charset=utf-8\" });\n    var url = URL.createObjectURL(blob);\n    var a = document.createElement(\"a\");\n    a.href = url;\n    a.download = \"notes.html\";\n    a.click();\n  });\n\n  root.querySelector(\"#nfg-export-print\").addEventListener(\"click\", function() {\n    var w = window.open(\"\", \"_blank\");\n    w.document.write(\"<html><head><title>Print Notes<\/title><\/head><body>\" + preview.innerHTML + \"<\/body><\/html>\");\n    w.document.close();\n    w.print();\n  });\n\n  \/\/ Input Event Listener for Live Updates\n  textarea.addEventListener(\"input\", updatePreviewAndStats);\n\n  \/\/ Initialize\n  renderNotesList();\n  loadCurrentNote();\n\n})();\n<\/script>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Notes Formatter &#038; Generator Pro Dark ModeMinimal LightNotebook YellowAcademic Warm Sidebar Auto Format Export B I U S H1 H2 H3 \u201c &lt;\/&gt; \u2022 List 1. List Table \u2014 &#8212; Quick Styles &#038; Templates &#8212;Standard Lecture NotesCornell TemplateSummary &#038; Key Points Clear Saved Notes + New Markdown \/ Raw Editor Formatted Live Preview Words: 0 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-842","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/pages\/842","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/comments?post=842"}],"version-history":[{"count":3,"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/pages\/842\/revisions"}],"predecessor-version":[{"id":845,"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/pages\/842\/revisions\/845"}],"wp:attachment":[{"href":"https:\/\/freewebtools.co.in\/index.php\/wp-json\/wp\/v2\/media?parent=842"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}