Skip to content
ALI HAITHAM·TECH·responds in <1h
  • Homestart here
  • Workcase studies, projects
  • Serviceswhat I will build for you
  • Writingessays, series
  • Traincourses, labs, cohorts
  • Aboutthe engineer behind this site
Sign inStart a project
ALI HAITHAM · TECH
  • Home↗
  • Work↗
  • Services↗
  • Writing↗
  • Train↗
  • About↗
Sign inStart a project
Online
ALI HAITHAM·TECH

Engineering studio. Damascus, GMT+3.

aliyosef.online

Studio

  • Work
  • Writing
  • Training
  • About
  • Contact me

Portal

  • Sign in
  • Open a ticket
  • Track project
  • My account

Resources

  • Docs
  • Status
  • Changelog
  • Brand kit
  • Privacy
  • Terms

Newsletter

Field notes and tech news. Weekly. No fluff.

Free. Unsubscribe anytime.

Find me elsewhere
© 2026 Ali Haitham Yosef. All rights reserved.Hand-built in React 19. No frameworks of frameworks.Last deployed · 2026-05-08All systems operational
Home·Every release, dated.
/01 — CHANGELOG

Every release, dated.

Public release notes for the studio platform. Features, fixes, security patches, and performance work — each entry tied to a date and a one-line summary. Nothing marketing; just what shipped.

  1. v2026.05.162026-05-16Performance

    Major performance + accessibility sweep.

    • All images migrated to WebP Q65 — homepage payload dropped 93%.
    • Code-split routes via React.lazy + lazy i18n locales — initial JS 1.31 MB → 99 KB.
    • Lighthouse mobile: a11y 100, best-practices 100, SEO 100, perf 80+.
    • Async font loading + LCP preload + gzip_static on nginx.
    • Skip-link, tap-target sizes (≥24×24), text-muted contrast ≥4.5:1 — full WCAG AA.
    • Robots.txt cleaned; hreflang + JSON-LD (Person + Org + WebSite) inline.
  2. v2026.05.122026-05-12Security

    Backend hardening pass + SMTP architecture refactor.

    • MailService now reads SMTP from admin DB settings (not env) — config takes effect without restart.
    • POST /settings/mail/test endpoint for one-click verification from the admin panel.
    • WhatsApp marketing schema rename to avoid CampaignStatus enum collision.
    • Prisma schema docstring conversion (/** */ → ///) to satisfy validator.
  3. v2026.05.092026-05-09Feature

    Phase 11.6 — /train page modules (Lab, LearningPath, ResearchPaper, WorkshopPackage, MembershipTier).

    • 5 new sibling modules backing the public /train page.
    • ResearchPaper email-gated downloads — PDFs never exposed in list/detail; email + rate-limit per IP.
    • LearningPath display-only steps schema (no cross-linking yet).
    • Course extension: 8 new display fields for the /train CatalogShelf cards.
    • 1 new email template (research.download_link), admin-editable.
  4. v2026.05.082026-05-08Feature

    Phase 11 hardening shipped — cache + SMTP + structured logs + PDF certs.

    • CacheService (memory + Redis-optional) wired into LanguagesService.
    • SMTP mail driver via nodemailer, real send when MAIL_DRIVER=smtp.
    • Structured JSON logging + X-Request-Id correlation.
    • PDF certificates via pdfkit, persisted at /uploads/certificates/<id>.pdf.
    • /ready aggregate readiness probe (DB + cache + mail).
  5. v2026.05.072026-05-07Feature

    Affiliate program + analytics dashboard endpoints (Phases 9 + 10).

    • Affiliate: account application, codes, click tracking with sessionId, SIGNUP/PURCHASE/ENROLLMENT conversions.
    • Payouts: per-currency, snapshotted commission percent, PAID conversions immutable.
    • Analytics: 13 internal hooks recording across auth/contact/enrollment/affiliate flows.
    • GA4 stub at /analytics/ga4/status.

Subscribe to the newsletter to get release notes in your inbox every other week.