<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Purelymanage on Hardcode Consulting</title>
    <link>https://blog.hardcodeconsulting.tech/tags/purelymanage/</link>
    <description>Recent content in Purelymanage on Hardcode Consulting</description>
    <image>
      <title>Hardcode Consulting</title>
      <url>https://blog.hardcodeconsulting.tech/favicon.svg</url>
      <link>https://blog.hardcodeconsulting.tech/favicon.svg</link>
    </image>
    <generator>Hugo -- 0.162.0</generator>
    <language>en</language>
    <lastBuildDate>Mon, 26 Jan 2026 15:00:00 +0530</lastBuildDate>
    <atom:link href="https://blog.hardcodeconsulting.tech/tags/purelymanage/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Deploying PurelyManage: systemd, nginx, and S3 Frontend</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-deployment/</link>
      <pubDate>Mon, 26 Jan 2026 15:00:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-deployment/</guid>
      <description>End-to-end deployment of PurelyManage: systemd service for the backend, nginx with TLS via certbot, and the React frontend on S3 with CloudFront.</description>
    </item>
    <item>
      <title>imapsync Setup and the Async Job Architecture</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-imapsync-architecture/</link>
      <pubDate>Tue, 20 Jan 2026 14:30:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-imapsync-architecture/</guid>
      <description>How to install imapsync from source and how PurelyManage streams job output to PostgreSQL, recovers from server restarts, and manages in-memory job state.</description>
    </item>
    <item>
      <title>Running IMAP Migration Jobs in PurelyManage</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-migration-jobs/</link>
      <pubDate>Wed, 14 Jan 2026 14:00:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-migration-jobs/</guid>
      <description>Single jobs, bulk CSV import, dry runs, the two-job concurrency queue, and how cancellation and reruns work in PurelyManage&amp;#39;s migration system.</description>
    </item>
    <item>
      <title>Collecting IMAP Credentials Without Storing Plaintext</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-credential-gathering/</link>
      <pubDate>Thu, 08 Jan 2026 13:30:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-credential-gathering/</guid>
      <description>How credential gathering campaigns collect IMAP passwords from users: live auth validation on submit, AES-256-GCM encryption, and one-way storage.</description>
    </item>
    <item>
      <title>DNS Health Monitoring Without Hammering the API</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-dns-scheduler/</link>
      <pubDate>Fri, 02 Jan 2026 13:00:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-dns-scheduler/</guid>
      <description>How PurelyManage keeps DNS health current across many domains using a three-tier priority scheduler instead of rechecking everything on every page load.</description>
    </item>
    <item>
      <title>Email User Management in PurelyManage</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-user-management/</link>
      <pubDate>Sat, 27 Dec 2025 12:30:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-user-management/</guid>
      <description>How PurelyManage handles email user creation, password generation, 2FA toggling, password reset, and what the PurelyMail API would not let us build.</description>
    </item>
    <item>
      <title>Adding and Verifying Domains in PurelyManage</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-domain-setup/</link>
      <pubDate>Sun, 21 Dec 2025 12:00:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-domain-setup/</guid>
      <description>How to add a domain to PurelyMail via PurelyManage: ownership verification, DNS record setup for MX, SPF, DKIM, and DMARC, and live DNS health monitoring.</description>
    </item>
    <item>
      <title>Building Against an Undocumented API: PurelyMail</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-undocumented-api/</link>
      <pubDate>Mon, 15 Dec 2025 11:30:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-undocumented-api/</guid>
      <description>Building a full admin panel on a closed API with no public docs: wrong field names, silent failures, and a 12-hour DKIM debug.</description>
    </item>
    <item>
      <title>Rogue Admin Protection with a 24-Hour Deletion Queue</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-deletion-queue/</link>
      <pubDate>Tue, 09 Dec 2025 11:00:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-deletion-queue/</guid>
      <description>How PurelyManage protects against accidental or malicious deletions using a 24-hour pending queue, owner alerts, and any-admin cancellation.</description>
    </item>
    <item>
      <title>Storing Credentials Securely: AES-256-GCM and JWT</title>
      <link>https://blog.hardcodeconsulting.tech/post/purelymanage-credential-security/</link>
      <pubDate>Wed, 03 Dec 2025 10:30:00 +0530</pubDate>
      <guid>https://blog.hardcodeconsulting.tech/post/purelymanage-credential-security/</guid>
      <description>How PurelyManage encrypts IMAP credentials at rest with AES-256-GCM, why the write-once model matters, and how JWT sliding window sessions work.</description>
    </item>
  </channel>
</rss>
