Overview: Where Development Is Heading
Recent backend development is centered on maturing OpenPGP/MIME signed outgoing email functionality to be fully RFC-compliant and interoperable with common email clients like Thunderbird. The work has focused on iterative fixes to MIME structure wrapping, ensuring both plain-text and HTML content are properly included in signed payloads, plus polishing edge cases around PGP key handling, header formatting, and signature generation to deliver reliable end-to-end signed messaging.
Overview: Where Development Is Heading
Recent development is heavily focused on enhancing site discoverability, SEO, and localization, with extensive work on responsive, locale-aware sitemaps (including mobile layout fixes, prefixed variants, JSON-LD integration, and XSL styling) alongside localized SSR meta tags, plus a new minimal MCP JSON-RPC server that exposes site search and sitemap tools for external integrations. Infrastructure updates are also a key priority, including refreshed Monad testnet/mainnet chain data pulled from official sources and secure remote MariaDB access configured via Tailscale with a strict 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
3ca396c80 2026-08-20 17:09:39 update Monad testnet/mainnet chain data from official docs/RPC
chore: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: