Overview: Where Development Is Heading
Recent backend development is centered on iteratively maturing the OpenPGP/MIME signed outgoing email feature, with a focus on achieving full RFC compliance and compatibility with common email clients like Thunderbird. The work addresses a range of edge cases around multipart MIME structure, accurate signed payload generation, proper header inclusion, and support for both plain text and HTML email alternatives, alongside core PGP functionality including public key attachment and binary secret key handling to deliver a robust, standards-aligned signed email experience.
Overview: Where Development Is Heading
Recent development for the frontend repo is focused on strengthening internationalized SEO and content discoverability, with extensive work on localized sitemap variants, mobile-responsive sitemap styling, and integrated JSON-LD metadata for server-rendered pages, alongside the addition of a minimal MCP JSON-RPC server to expose site search and sitemap tooling. The team is also prioritizing secure remote access to backend resources, with recent work to expose MariaDB on a public interface restricted to Tailscale and localhost connections via a firewall allowlist.
Project Direction — Both repos are converging on a stable, production-ready NFT marketplace. The backend is hardening core systems while the frontend improves architecture and user experience.
Backend Commits
2b08d9c 2026-08-10 00:08:24 show plain/html as alternative inside signed PGP/MIME
fix:e97908d 2026-08-10 00:07:04 ensure signed payload contains mail headers, not blank body
fix:66aad0b 2026-08-10 00:04:35 wrap base64 at 76 chars and generate RFC-compliant Message-ID
fix:9fb3a2e 2026-08-10 00:02:10 restore proper multipart/signed wrapper without forwarded text
fix:cd9ecc2 2026-08-09 23:55:23 wrap plain+html in multipart/alternative inside multipart/mixed
fix:5819410 2026-08-09 23:54:42 match valid PGP/MIME example with multipart/mixed inside multipart/signed
fix:83318ea 2026-08-09 23:51:16 sign exact multipart/mixed payload and wrap it in multipart/signed
fix:7fca8a5 2026-08-09 23:43:33 wrap multipart/mixed inside multipart/signed with plain+html
fix:a5c5511 2026-08-09 23:41:26 simplify PGP/MIME signing to minimal plain+html multipart/alternative
refactor:3f07253 2026-08-09 23:33:32 support binary PGP secret keys and keep both text/html in signed MIME
fix:e913899 2026-08-09 23:32:32 include both plain and HTML parts in PGP/MIME signed email
fix:c1a0220 2026-08-09 23:26:17 match Thunderbird-valid OpenPGP/MIME structure
fix:b340961 2026-08-09 23:23:35 build valid OpenPGP/MIME signed messages matching Thunderbird structure
fix:ffd352e 2026-08-09 23:09:03
fix(backend): generate detached OpenPGP signature for PGP/MIMEcbec696 2026-08-09 23:04:21
fix(backend): preserve from/to when sending raw PGP/MIME messagesc47a396 2026-08-09 23:03:10
fix(backend): add proper mail headers to raw PGP/MIME signed output7ac17bd 2026-08-09 23:02:22
fix(backend): send real PGP/MIME signed outgoing mail94def8d 2026-08-09 22:53:14
fix(backend): inline PGP signature in signed email text body64480c4 2026-08-09 22:49:37
feat(backend): attach public PGP key to signed outgoing emailsf83c615 2026-08-09 22:47:33
fix(backend): resolve pgp import path from utils/email.js5848efb 2026-08-09 22:46:27
fix(backend): sign system notification emails via PGPbcbbffe 2026-08-09 22:37:20
fix(backend): sign all outgoing email messages with PGPeeee702 2026-08-09 22:35:41
feat(backend): wire backend PGP signing from .pgpkey and ignore secretc18aefb 2026-08-09 22:30:15
feat(backend): add backend PGP email signing support4d67aa0 2026-08-09 20:21:49
feat(i18n): add backend locale detection and translated messages
Frontend Commits
09a7de22e 2026-08-20 01:18:56 expose mariadb on 0.0.0.0 with firewall allowlist for tailscale0 and lo
feat:61d452d8a 2026-08-18 15:43:00 add minimal MCP JSON-RPC server at /mcp with site.search and sitemap.urls tools
feat:f4d33326d 2026-08-18 14:10:09 add prefixed sitemap variants and duplicate index entries
feat:aba03743b 2026-08-18 13:52:19 add sitemap index, XSL fallback, and dynamic JSON+LD localization
feat:392f5a66c 2026-08-17 20:07:42 localize SSR meta tags and JSON-LD with English fallback
feat:bb3264de1 2026-08-17 19:27:12 include centralized JSON-LD for locale-prefixed SSR pages
fix:512e25892 2026-08-17 18:36:53 right-align mobile sitemap cell data beside floated labels
fix:418a5d968 2026-08-17 18:30:21 right-align mobile sitemap cell data beside floated labels
fix:f6a727e48 2026-08-17 18:25:29 align mobile sitemap languages with other cells and remove label gap
fix:85dd9c3e5 2026-08-17 18:16:25 copy updated sitemap.xsl into dist/client so SSR serves current stylesheet
fix:cff471c57 2026-08-17 17:49:49 prevent languages column from stretching on mobile sitemap
fix:76afb8804 2026-08-17 17:45:31 regenerate sitemap.xml after mobile layout fix
chore:c4cf6615d 2026-08-17 17:44:00 use orientation-aware card layout for sitemap on narrow/portrait screens
fix:4a41e791e 2026-08-17 17:41:05 improve sitemap mobile layout with card-style rows under 720px
fix:28dd09b41 2026-08-17 17:35:26 prevent sitemap page and timestamp overflow on mobile
fix:120025311 2026-08-17 17:31:42 truncate last generated timestamp with ellipsis on mobile
fix:582d6f366 2026-08-17 17:29:27 prevent lastmod timestamp overflow in mobile stats
fix:6765d16e8 2026-08-17 17:28:33 improve sitemap.xsl mobile styling
fix:3deb67292 2026-08-17 17:16:51 include all supported locales in sitemap generator
feat:17efb3ae7 2026-08-17 17:14:32 remove duplicate style attribute in sitemap.xsl legend
fix:95547d59d 2026-08-17 17:13:36 put xml declaration before stylesheet PI in sitemap.xml
fix:e441e9324 2026-08-17 17:11:31 add sitemap XSLT and serve /sitemap.xsl
feat:20c9c8a80 2026-08-17 02:17:40 add 10 new locales from top-15 world languages
feat:666946315 2026-08-17 01:47:54 translate remaining untranslated strings in non-English locales
fix:202ca66c6 2026-08-17 01:37:56 add translations for new signIn keys across all locales
feat: