← Journal
March 02, 2026·5 min read·Nasywan Damar
StopWritingHardcodedPortfolios
The case for treating your own site like a real product: a typed schema, a CMS, and the same review process you give clients.
CMSSanityCareer
Your portfolio is the only product where the customer is also the engineer.
Treating content as data forces honesty. You stop sneaking in copy edits on Sunday night and start versioning your own narrative.
I sketch the schema first — title, role, challenge, solution, tech stack — then let Sanity Studio be the writing surface. New case studies ship in minutes, not branches.
queries.tsgroq
1*[_type == "project"] | order(order asc) {2 _id, title, slug, client, year, role, category, techStack, coverUrl, featured3}
The bonus: the same schema that powers your portfolio doubles as the rough draft of a client proposal.
(Share)