<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
>
  <channel>
    <title>HonestPDF Changelog | Honest Maker</title>
    <description>Changelog for HonestPDF</description>
    <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web</link>
    <atom:link href="https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/rss.xml" rel="self" type="application/rss+xml" />
    <language>en-us</language>
    <generator>PushToPost</generator>
    <lastBuildDate>Fri, 17 Apr 2026 12:09:29 GMT</lastBuildDate>
    <item>
      <title><![CDATA[New Blog Guides, 19-Language Translations, and JPG to PDF Bug Fix]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-guides-19-language-translations-and-jpg-to-pdf-bug-fix</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-guides-19-language-translations-and-jpg-to-pdf-bug-fix</guid>
      <description><![CDATA[HonestPDF published four new blog posts (Smallpdf review, Sejda review, PDF redaction guide, PDF merging guide) translated into 19 languages using automated ...]]></description>
      <content:encoded><![CDATA[<p>HonestPDF introduces four new blog posts translated into 19 languages, along with automated translation and SEO validation tooling, in this update. A user-facing bug in the JPG to PDF conversion tool has also been resolved.</p>
<h2>TL;DR</h2>
<p>Four new content pieces are live covering PDF tool reviews and practical PDF guides, all available in 19 languages from day one. Automated Node.js scripts now handle translation and JSON-LD schema validation so new content stays globally consistent without manual editing.</p>
<h2>What's New</h2>
<ul>
<li><strong>New blog posts</strong>: Smallpdf review, Sejda review, PDF redaction guide, and PDF merging guide published to the blog</li>
<li><strong>19-language translations</strong>: All new blog content automatically translated using a Node.js script backed by the Anthropic API</li>
<li><strong>JSON-LD SEO validation script</strong>: New Node.js script validates structured data schema across blog posts to keep SEO markup clean as content scales</li>
<li><strong>Internal cross-linking</strong>: Translation script automatically appends localized internal links across all language variants</li>
<li><strong>Bug fix: JPG to PDF tool</strong>: Resolved a user-facing conversion bug affecting JPG to PDF output</li>
<li><strong>Blog layout fixes</strong>: Resolved a duplicated header issue and corrected typography rendering in the blog layout</li>
<li><strong>Next.js updates</strong>: <code>page.tsx</code> blog rendering logic and global CSS updated to support improved layout and formatting</li>
</ul>
<h2>How to Use</h2>
<p>All new blog posts are available at <a href="https://www.gethonestpdf.com/blog">https://www.gethonestpdf.com/blog</a>. Language variants are served automatically based on locale. No action needed from users.</p>
<p>For contributors, the two new scripts are:</p>
<ol>
<li>Run the translation script after adding new markdown content to generate all 19 locale files</li>
<li>Run the JSON-LD validation script before publishing to verify structured data is well-formed</li>
</ol>
<h2>FAQ</h2>
<h3>Which languages are the new blog posts available in?</h3>
<p>All four new posts are translated into 19 languages including French, German, Japanese, Portuguese, Spanish, and others. Translations are generated automatically via the Anthropic API and applied to every locale file in a single script run.</p>
<h3>What was the JPG to PDF bug and who did it affect?</h3>
<p>The bug caused incorrect output during JPG to PDF conversion for affected users. It has been fully resolved in this update and the tool is working correctly.</p>
<h3>How does the automated translation pipeline work?</h3>
<p>A Node.js script reads new markdown blog content, calls the Anthropic API to produce localized versions, and writes the results to each of the 19 language files. It also injects locale-appropriate internal links automatically.</p>
<h3>What does the JSON-LD validation script check?</h3>
<p>The script parses structured data blocks in blog markdown files and validates them against expected JSON-LD schema shapes, catching malformed or missing fields before they affect search engine indexing.</p>]]></content:encoded>
      <pubDate>Thu, 16 Apr 2026 17:40:37 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Blog Posts, Translations, and Blog Layout Fixes]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-posts-translations-and-blog-layout-fixes</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-posts-translations-and-blog-layout-fixes</guid>
      <description><![CDATA[HonestPDF published four new blog posts including Smallpdf and Sejda reviews, a PDF redaction guide, and a PDF merging guide. All content is translated into ...]]></description>
      <content:encoded><![CDATA[<p>HonestPDF introduces four new blog posts, multilingual translations, and several blog layout bug fixes in this update.</p>
<h2>TL;DR</h2>
<p>Four new content pieces are live covering PDF tool reviews and practical PDF guides, all translated into 20+ languages via the existing Anthropic API pipeline. A duplicated header bug and typography issues on blog pages have also been resolved.</p>
<h2>What's New</h2>
<ul>
<li><strong>Smallpdf review</strong>: In-depth breakdown of Smallpdf's features, pricing, and limitations</li>
<li><strong>Sejda review</strong>: Detailed review of Sejda as a PDF editing and management tool</li>
<li><strong>PDF redaction guide</strong>: Step-by-step walkthrough on redacting sensitive content from PDF files</li>
<li><strong>PDF merging guide</strong>: Practical guide covering how to merge PDF files and when to use different approaches</li>
<li><strong>Multilingual translations</strong>: All four new posts translated into 20+ supported languages using the AI-assisted translation script</li>
<li><strong>SEO utility scripts</strong>: Added scripts for validating JSON-LD structured data and managing internal link appending across localized content</li>
<li><strong>Duplicated header bug fix</strong>: Blog layout pages were rendering a duplicate header element, now resolved</li>
<li><strong>Typography fixes</strong>: Corrected typographic inconsistencies across blog post templates</li>
</ul>
<h2>How to Use</h2>
<p>All new content is accessible directly from the HonestPDF blog at <a href="https://www.gethonestpdf.com/">https://www.gethonestpdf.com/</a>. Localized versions are served automatically based on user locale settings. No configuration needed.</p>
<p>For contributors using the internal scripts:</p>
<ol>
<li>Run the SEO validation script to check JSON-LD schema integrity before publishing</li>
<li>Use the link-appending script to automatically add internal links across all locale markdown files after a new post is published</li>
</ol>
<h2>FAQ</h2>
<h3>Are the new blog posts available in all supported languages?</h3>
<p>Yes. All four posts were translated into 20+ languages using the Anthropic API translation pipeline, so every locale is complete from day one.</p>
<h3>What was the duplicated header bug?</h3>
<p>Blog layout pages were rendering the header component twice due to a structural issue in the layout template. This affected the visual appearance of blog posts and has been corrected.</p>
<h3>Do the new SEO scripts run automatically?</h3>
<p>No. The SEO validation and link-appending scripts are utility scripts intended to be run manually as part of the content publishing workflow, not as automated CI steps at this time.</p>
<h3>Will future blog posts also be translated automatically?</h3>
<p>Yes. The translation pipeline is already in place. New posts go through the same script-based process, so global availability from day one is the default for all future content.</p>]]></content:encoded>
      <pubDate>Thu, 16 Apr 2026 15:21:37 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Blog Posts, Auto-Translation Scripts, and Layout Fixes]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-posts-auto-translation-scripts-and-layout-fixes</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/new-blog-posts-auto-translation-scripts-and-layout-fixes</guid>
      <description><![CDATA[HonestPDF adds four new blog posts (Smallpdf review, Sejda review, PDF redaction guide, PDF merging guide), Node.js scripts for Anthropic API-powered auto-tr...]]></description>
      <content:encoded><![CDATA[<p>HonestPDF introduces four new blog posts, automated translation and cross-linking scripts, and fixes for blog typography bugs in this update.</p>
<h2>TL;DR</h2>
<p>Four new long-form posts are live covering Smallpdf, Sejda, PDF redaction, and PDF merging. Internal Node.js scripts now handle AI-assisted translation via the Anthropic API and JSON-LD schema validation, making future content updates faster and more consistent across all 20+ supported locales.</p>
<h2>What's New</h2>
<ul>
<li><strong>New blog posts added:</strong>
<ul>
<li>Smallpdf review</li>
<li>Sejda review</li>
<li>PDF redaction guide</li>
<li>PDF merging guide</li>
</ul>
</li>
<li><strong><code>append_links.js</code></strong>: Node.js script that uses the Anthropic API to auto-translate new posts and append internal cross-links across all localized markdown files</li>
<li><strong><code>check_page.js</code></strong>: Script that validates JSON-LD structured data schema for blog pages, keeping SEO metadata accurate as content grows</li>
<li><strong>Existing blog content updated</strong>: Metadata, expanded body text, and cross-links refreshed across 20+ localized markdown files</li>
<li><strong>Bug fixes in <code>page.tsx</code> and <code>globals.css</code></strong>: Resolved duplicated header rendering and corrected typography spacing issues in the blog layout</li>
</ul>
<h2>How to Use</h2>
<p>To translate and cross-link a new post across all locales, run:</p>
<pre><code class="language-bash">node scripts/append_links.js
</code></pre>
<p>To validate JSON-LD schema for blog pages:</p>
<pre><code class="language-bash">node scripts/check_page.js
</code></pre>
<p>Both scripts require a valid <code>ANTHROPIC_API_KEY</code> in your environment.</p>
<h2>FAQ</h2>
<h3>What does the append_links.js script actually do?</h3>
<p>It reads new or updated markdown blog posts, uses the Anthropic API to generate localized translations, and appends consistent internal cross-links to all 20+ language variants automatically.</p>
<h3>Does the auto-translation overwrite existing localized content?</h3>
<p>No. The script is additive. It targets missing translations and appends new link entries without overwriting manually edited content already in place.</p>
<h3>What was the duplicated header bug?</h3>
<p>A rendering issue in <code>page.tsx</code> caused the blog post header to appear twice on certain routes. The fix corrects the component structure so the header renders once as expected.</p>
<h3>Are the new blog posts indexed for SEO?</h3>
<p>Yes. JSON-LD structured data is included and validated via the <code>check_page.js</code> script, and all posts are available in 20+ language versions for international search indexing.</p>]]></content:encoded>
      <pubDate>Thu, 16 Apr 2026 11:03:57 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Removed em dashes across i18n files, blog content, and UI components]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/removed-em-dashes-across-i18n-files-blog-content-and-ui-components</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/removed-em-dashes-across-i18n-files-blog-content-and-ui-components</guid>
      <description><![CDATA[HonestPDF removes em dashes from all i18n JSON translation files, MDX blog posts, SEO meta tags, and UI components across 20+ languages. Replacements use col...]]></description>
      <content:encoded><![CDATA[<p>HonestPDF removes all em dash usage from translation files, blog posts, SEO meta tags, and UI components in this update. Every affected string was reviewed in context and replaced with a grammatically appropriate alternative.</p>
<h2>TL;DR</h2>
<p>Em dashes were inconsistently present across the codebase, spanning 20+ i18n language files, localized MDX blog content, SEO meta descriptions, and hardcoded UI components. This update replaces all of them with colons, commas, or periods depending on context, making copy consistent and clean across every locale.</p>
<h2>What's New</h2>
<ul>
<li>Removed em dashes from i18n JSON translation files across 20+ supported languages</li>
<li>Replaced em dashes with colons or commas in localized MDX blog posts</li>
<li>Cleaned em dashes from SEO meta tags (titles, descriptions, og:description fields)</li>
<li>Removed em dashes from hardcoded UI component strings</li>
<li>Each replacement reviewed individually for grammatical correctness in context</li>
</ul>
<h2>How to Use</h2>
<p>No action needed. All changes are in static content and translation files. Any UI strings or blog content that previously contained em dashes now render with their replacement characters automatically.</p>
<h2>FAQ</h2>
<h3>Why remove em dashes specifically?</h3>
<p>Em dashes are a well-known signal of AI-generated or unreviewed text. Removing them makes the copy feel more intentional and human-edited, which matters for both user trust and content quality.</p>
<h3>Were all 20+ language files updated?</h3>
<p>Yes. Every locale file was checked and any em dash occurrences were replaced. No language was left with inconsistent formatting.</p>
<h3>Does this affect any functionality or translations?</h3>
<p>No functionality changes. Only cosmetic string content was modified. Meaning and translation accuracy are preserved.</p>
<h3>Were replacements automated or manual?</h3>
<p>The changes were reviewed in context rather than blindly find-and-replaced. Each em dash was substituted with the most appropriate punctuation for that specific sentence structure.</p>]]></content:encoded>
      <pubDate>Wed, 15 Apr 2026 21:51:38 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Fixed missing Privacy Scanner Tool translations across 20 locales]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/fixed-missing-privacy-scanner-tool-translations-across-20-locales</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/fixed-missing-privacy-scanner-tool-translations-across-20-locales</guid>
      <description><![CDATA[Bugfix: HonestPDF restores missing PrivacyScannerTool i18n translation keys across 20 locale JSON files using an automated restore script.]]></description>
      <content:encoded><![CDATA[<p>HonestPDF restores missing PrivacyScannerTool translation keys across all 20 supported locale files in this update.</p>
<h2>TL;DR</h2>
<p>The Privacy Scanner Tool was missing its i18n translation keys in every language JSON file. This caused broken or empty UI strings for all non-English users. A restore script was updated to detect and reinsert the missing keys across all 20 locales at once.</p>
<h2>What's New</h2>
<ul>
<li>Added <code>PrivacyScannerTool</code> translation keys to all 20 language JSON files (fr, de, ja, pt, es, and 15 more)</li>
<li>Updated <code>restore_missing_tools.js</code> to handle missing tool-level translation blocks and reinsert them automatically</li>
<li>All locale files are now back in sync with the expected translation schema</li>
</ul>
<h2>How to Use</h2>
<p>No action needed for end users — translations are restored automatically. If you're maintaining locale files locally, pull the latest changes and re-run the restore script if you have any custom forks:</p>
<pre><code class="language-bash">node scripts/restore_missing_tools.js
</code></pre>
<h2>FAQ</h2>
<h3>What languages were affected?</h3>
<p>All 20 supported locales were missing the PrivacyScannerTool keys, including French, German, Spanish, Japanese, Portuguese, and 15 others. English was the only unaffected language.</p>
<h3>Why did the translation keys go missing?</h3>
<p>The PrivacyScannerTool entries were not included when the tool was originally added to the locale files, leaving a gap across all non-English JSON translation files.</p>
<h3>Was any user data affected?</h3>
<p>No. This was purely a UI string issue — no data processing or file handling logic was changed.</p>
<h3>How was this fixed at scale without editing 20 files manually?</h3>
<p>The <code>restore_missing_tools.js</code> script was updated to detect missing tool translation blocks and reinsert the correct keys programmatically, keeping all locale files consistent.</p>]]></content:encoded>
      <pubDate>Tue, 14 Apr 2026 15:18:21 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Dark/Light Mode, Mobile UI Overhaul & 3-Step Upload Guides]]></title>
      <link>https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/darklight-mode-mobile-ui-overhaul-3-step-upload-guides</link>
      <guid isPermaLink="true">https://pushtopost.com/changelog/honestmaker1509/honestpdf-web/darklight-mode-mobile-ui-overhaul-3-step-upload-guides</guid>
      <description><![CDATA[HonestPDF adds dark and light mode support, a rebuilt mobile UI with fixed 100svh scrolling, a 3-step upload guide in 20 languages, and a new logo across all...]]></description>
      <content:encoded><![CDATA[<p>HonestPDF introduces full dark/light mode theming, a rebuilt mobile UI, and standardized 3-step visual upload guides across all 20+ PDF tools in this update.</p>
<h2>TL;DR</h2>
<p>This release is the largest design and UX update to HonestPDF to date. Dark and light mode are now fully supported app-wide, the mobile experience has been rebuilt to feel native and clutter-free, and every tool now includes a visual 3-step guide to walk users through the upload-process — available in 20 languages.</p>
<h2>What's New</h2>
<ul>
<li><strong>Dark/Light Mode:</strong> Full theme support added across the entire application. System preference is respected by default.</li>
<li><strong>Mobile UI Overhaul:</strong> Headers are cleaner, SEO/hero text sections are hidden on mobile viewports, and scrolling is fixed using <code>100svh</code> to prevent layout overflow issues on mobile browsers.</li>
<li><strong>3-Step Visual Upload Guide:</strong> Every tool upload zone now includes a standardized 3-step guide (drop file → configure → download) to reduce user confusion and drop-off.</li>
<li><strong>i18n for Upload Guides:</strong> The 3-step guide copy is fully translated into 20 languages, consistent with the rest of the app's localization.</li>
<li><strong>Standardized Upload Zones &#x26; Trust Badges:</strong> All 20+ tool routes now use a consistent upload zone component and trust badge layout.</li>
<li><strong>New Logo &#x26; Favicons:</strong> The HonestPDF logo and all favicons have been updated to the new brand variant.</li>
<li><strong>Automated Component Migration Scripts:</strong> Structural React component changes were applied across 20+ routes using automated scripts for consistency and accuracy.</li>
</ul>
<h2>How to Use</h2>
<p>Dark/light mode toggles automatically based on system preference. No user action required. To manually switch themes, use the theme toggle in the navigation bar.</p>
<p>The 3-step upload guide appears automatically in all tool upload zones — no configuration needed.</p>
<h2>Breaking Changes</h2>
<p>None. All changes are additive or visual. Existing tool functionality and API behavior are unchanged.</p>
<h2>FAQ</h2>
<h3>Does dark mode persist across sessions?</h3>
<p>Yes, the selected theme preference is saved locally and restored on the next visit.</p>
<h3>Which languages are supported for the new 3-step upload guide?</h3>
<p>The guide is translated into 20 languages, matching the full i18n coverage already present throughout the app.</p>
<h3>Were any tool features changed in this update?</h3>
<p>No tool functionality was changed. This update focuses entirely on UI, theming, layout consistency, and UX improvements.</p>
<h3>Why was the mobile UI rebuilt instead of patched?</h3>
<p>The previous mobile layout inherited desktop structure that caused scrolling bugs and cluttered screens. A rebuild using <code>100svh</code> and component-level visibility rules was the cleanest long-term fix.</p>]]></content:encoded>
      <pubDate>Sun, 12 Apr 2026 22:37:23 GMT</pubDate>
    </item>
  </channel>
</rss>