My Personal Website
Developed using Next.js, TypeScript, Tailwind CSS and Prisma ORM. Deployed on Cloudflare Pages and Cloudflare D1.
This site was built in 2024 when I started applying for internships. Since Vue.js was the only JavaScript framework I had used previously and I was looking to gain some new experience, I decided to build my website with Next.js in TypeScript.
My major functional requirements were a main page with a few different sections, most notably a ‘Projects’ section which loads each project dynamically from a database. I also wanted to include a dedicated page to display more details about a project.
To store the projects, I settled on Cloudflare's D1 serverless SQL database service because of its generous free plan. However, as it is based on SQLite, it comes with some feature limitations which I had to work around, like not supporting enums.
For deployment, I decided to go with Cloudflare Pages, which hosts the web page, and Cloudflare R2, which provides object storage. This setup also runs for free.
You can find the source code on GitHub.
Category: Personal project