<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: FadeHack</title>
    <description>The latest articles on DEV Community by FadeHack (@fadehack).</description>
    <link>https://dev.to/fadehack</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4146489%2F13f55704-d342-4399-8719-2937ef7bfedf.png</url>
      <title>DEV Community: FadeHack</title>
      <link>https://dev.to/fadehack</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fadehack"/>
    <language>en</language>
    <item>
      <title>strypt: remove hidden metadata from your files before you share them</title>
      <dc:creator>FadeHack</dc:creator>
      <pubDate>Mon, 28 Sep 2026 07:11:39 +0000</pubDate>
      <link>https://dev.to/fadehack/strypt-remove-hidden-metadata-from-your-files-before-you-share-them-3dic</link>
      <guid>https://dev.to/fadehack/strypt-remove-hidden-metadata-from-your-files-before-you-share-them-3dic</guid>
      <description>&lt;p&gt;Every photo, PDF and Word document you share can carry more than you think: the GPS spot where a photo was taken, your camera's serial number, your name and organisation, when you edited the file. None of it shows when you open it, but anyone who receives the file can read it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/FadeHack/strypt" rel="noopener noreferrer"&gt;strypt&lt;/a&gt; finds that hidden data and removes it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvaarfnlunp87ic9uzzpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvaarfnlunp87ic9uzzpa.png" alt="The strypt app after cleaning a photo" width="800" height="801"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Two ways to use it
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Desktop app&lt;/strong&gt; for macOS, Linux and Windows: drop files onto the window, and strypt writes a cleaned copy next to each one and shows what it removed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Command line&lt;/strong&gt; for scripts and pipelines:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;strypt show photo.jpg     &lt;span class="c"&gt;# see what's hidden inside&lt;/span&gt;
strypt strip photo.jpg    &lt;span class="c"&gt;# write a cleaned copy&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Why it's different
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Fully offline.&lt;/strong&gt; No network code at all, not even update checks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Never half-cleans.&lt;/strong&gt; If it can't fully clean a file, it gives you nothing rather than a partial copy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Built in Rust&lt;/strong&gt;, with every file parser fuzz-tested.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free and open source&lt;/strong&gt; (MIT or Apache-2.0).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It handles photos (JPEG, PNG, HEIC, WebP and more), PDFs, Word/Excel/PowerPoint, LibreOffice files, and audio and video like MP3, FLAC and MP4.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;Downloads are on the &lt;a href="https://github.com/FadeHack/strypt/releases/latest" rel="noopener noreferrer"&gt;release page&lt;/a&gt;, or install the CLI with &lt;code&gt;brew install fadehack/strypt/strypt&lt;/code&gt; or &lt;code&gt;cargo install strypt&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;If it helps you, a ⭐ on &lt;a href="https://github.com/FadeHack/strypt" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; goes a long way, and feedback is always welcome.&lt;/p&gt;

</description>
      <category>rust</category>
      <category>privacy</category>
      <category>opensource</category>
      <category>security</category>
    </item>
  </channel>
</rss>
