# 13 — Portfolio & Marketing Infrastructure **Rank 28 of 28** · Tier C · `Portfolio/DesignByDuhart`, `Marketing/`, `ADMIN/` **Stack:** Cloudflare Pages, wrangler, static HTML/CSS, DNS > **Why this ranks last.** It is not distributed systems. It is ranked here > honestly rather than padded upward. It earns its place for one reason: it is > the *delivery vehicle* for everything above it, and it contains one genuinely > good piece of infrastructure reasoning. --- ## The site `designsbyduhart.org` on **Cloudflare Pages**, deliberately **not** on the app droplet — the portfolio shares no infrastructure with the production dating app, so an outage on one cannot take down the other. That isolation decision is correct and worth stating. ``` Portfolio/DesignByDuhart/ public/ served at the site root projects/ ← this portfolio (ranked case studies) infographics/ ← rendered HTML infographics workers/ db/ config/ docs/ recovered/ ``` Deploy: `wrangler pages deploy public` ## The DNS migration reasoning — the part worth reading The apex domain must serve from Pages. Pages custom domains need a CNAME. **A CNAME is illegal at the apex** (RFC 1034), and DigitalOcean DNS has no ALIAS/ANAME to work around it. Cloudflare's CNAME flattening does. So the zone must move to Cloudflare nameservers — and the migration order is written down because **step 2 is the one that breaks email if you skip it**: 1. Add the zone in Cloudflare. 2. **Verify the imported records include Google Workspace mail** — `MX → smtp.google.com`, the SPF TXT, the site-verification TXT. *Missing MX = broken email.* Add by hand if the scan missed them. 3. Change nameservers at the registrar. 4. Delete the stale a stale A record (dead droplet). 5. Attach the custom domains in Pages. Knowing that a nameserver change silently takes your mail with it — and writing the check as a blocking step rather than a footnote — is real operational judgment. It is the same instinct as the gap registers in [the manuals](12-technical-documentation.md). ## Marketing tree `Marketing/` carries brand and content systems for the product lines (Bizz, Dating, DesignsByDuhart, PersonalProfile, SocialsMaster, Syndicate) plus config and docs. `ADMIN/CopyrightOffice/` holds IP registration material. ## Use it for Nothing in the technical interview. Everything in the *pipeline* — this is the URL on the résumé, and the ranked case studies in `projects/` are what a recruiter reads before deciding whether to forward you.