<aside>
I managed the content for my portfolio site using Strapi - an open source Content Management System (CMS) where I am able to deploy and host structured data that my frontend portfolio application fetches and displays. I think building and deploying a web application using a CMS is a good introductory exercise for developers to learn backend concepts and processes, the CMS is essentially a database for the content. Technically, for this portfolio in particular I could store all the content statically in a JSON file and cut multiple steps in between, but this isn’t efficient for larger projects that are expected to scale and work with more complicated schemas and heavier data - like a blog or a storefront.
Unfortunately, Strapi will be ending their free tier in the next couple of weeks so I need to figure out what to use instead. Learning and implementing Sanity would be a good exercise and give me the opportunity to add another relevant and widely used tool under my belt. However, because I am so familiar with the content of my portfolio and want more control over how it is being structured, stored, and communicated with, I realized I am more than capable of building my own CMS at this scale.
https://strapi.io/blog/we-re-removing-the-free-plan-from-strapi-cloud
https://nayankyada.com/blog/strapi-pricing-2026-community-edition-cloud-tiers-and-real-infra-costs
</aside>
<aside>
https://www.sanity.io/headless-cms
</aside>
<aside>
https://github.com/codecrafters-io/build-your-own-x
https://medium.com/@ddamato/how-i-built-a-cms-in-a-day-759b8171926a
https://www.scnsoft.com/cms/building
</aside>