Web development · 2025
Static Portfolio
A Next.js Portfolio Template with SSR, Dynamic Link Previews & No-Code Editing
A modern, SEO-friendly portfolio template built with Next.js, offering dynamic link previews, a private contact form, and hassle-free content editing through YourShine's shared admin panel — no coding required.

This project also started the same way as YourShine — as a portfolio gift for one of my non-technical friends, and in many ways, it was the actual starting point of the dynamic portfolios idea (you can refer to the YourShine project for that full story). The very first version was designed entirely with basic HTML, CSS, and Bootstrap, with no fancy libraries or frameworks involved. Later, I went back and redesigned it completely, upgrading the tech stack to make it look noticeably better and behave much more like a proper product.
Along with the redesign, I added some genuinely useful functionality — most notably, a fully working contact form. Instead of exposing the portfolio owner's personal email address, the form forwards every message directly to their inbox, keeping their email completely private while they can still receive enquiries without any hassle. But the biggest upgrade was under the hood: by modernising the tech stack, I was able to connect this portfolio to YourShine's backend, plugging it into the same shared admin panel used across the platform. This meant the owner could now update their content — text, photos, everything — simply through the admin panel, with zero coding involved.
For the frontend, I moved to the Next.js framework, which brought Server-Side Rendering (SSR) into the picture. In simple terms, this means that whenever search engines, WhatsApp, Facebook, or any other platform "crawl" the page to generate a preview, they pick up the latest content directly — photos, descriptions, everything — exactly as it stands at that moment. So if the owner updates their portfolio through the admin panel, the link preview shown when they share it on WhatsApp or Facebook updates automatically too, instead of staying stuck with old, outdated information.
Related