Back to Blog
Hello World

11/5/20259 min read

Hello World...again?!

In a rather symbolic way, this is my first blog post on this newly redesigned website. After years of using a static HTML/CSS/JS portofolio, I decided to avoid postponing the inevitable any longer: moving to a modern tech stack so that I can:

  1. Easily add new content (blog posts, projects, etc.)
  2. Showcase my skills with React, Next.js and TypeScript
  3. Have a solid foundation to build upon for future enhancements
  4. Experiment with new web technologies and best practices
  5. Open-source my personal website as a reference for others
  6. And of course, have fun doing it!

The Past

Formerly, I was using a simple static website that I built from scratch with HTML, CSS, and JavaScript (you can actually still find it at https://alemoraru.github.io/ - I will keep it online for nostalgia's sake). This was back in 2019, during the start of my 2nd year of university (BSc in CS @ TU Delft). Back then, when LLMs were not a common affordance (ChatGPT being released to the consumer market only in late 2022), it was a fairly complicated and tedious task to build a website from scratch. Sure, there were (and still are) many templates and themes available online, but where was the fun in that?

Like with most things in life, building something from scratch has its own charm and satisfaction: you struggle, you fail, you learn, and eventually you succeed. The end result is something that you can truly call your own. Sure, it may not be perfect, but at least you built it yourself. That was my mindset back then, and it still holds true today.

Today

In 2025, the web development landscape has evolved significantly. Frameworks are appearing left and right, and to non-seasoned frontend developers, it feels as if every week there is a new "best" framework or library to use. People tweet (I know, I know, it's called X today, but it still feels weird to call it as such) left and right about how "React is dead", "This new framework is the future", and so on. I believe this will continue for the foreseeable future. After all, people love to debate and argue (about everything, really) about which technology is better, and the web development community is no exception.

Amidst this chaos, I decided to stick with what I know and, quite frankly, what I absolutely love: React + TypeScript + Tailwind CSS. For instance, here is a simple reusable component I built for the "View All" link header on the dashboard at https://nextjs-portofolio-website.vercel.app/:

tsx
export default function ViewAllHeader({ title, pageUrl, itemCount }: ViewAllButtonProps) {
  return (
    <div className="flex justify-between items-center mb-4">
      <h2 className="text-2xl font-semibold">{title}</h2>
      <Link
        href={pageUrl}
        className="relative inline-block text-blue-500 text-sm transition-all
          duration-300 group hover:text-blue-400"
      >
        <span className="group-hover:underline group-hover:decoration-transparent">
          View all ({itemCount})
        </span>
        <span
          className="absolute left-0 -bottom-0.5 w-0 h-[2px] bg-blue-500
          transition-all duration-300 group-hover:w-full"
        ></span>
      </Link>
    </div>
  )
}

In all fairness, the re-usability of components, the vast ecosystem, and bundling it with TypeScript removes a lot of the pain points that for years made frontend development something to dread, rather than something to look forward to.

As for Next.js, I wanted to have a solid framework that would allow me to build a performant, SEO-friendly website with minimal configuration. Now, you might wonder, "Why not use something like Nuxt, Astro, SvelteKit, or even Gatsby?". Truth be told, I looked at all of them. In the end, I wanted to just pick one and stick with it without overthinking it. Yes, you can argue that Next.js is overkill for a personal website, and you might be just right. I am barely using any of its advanced features, I know, but hey, at least I am using something I am familiar with and enjoy working with.

The Future

This website is just the beginning. As of now, the repository on GitHub is a public template, so feel free to check it out at https://nextjs-portofolio-website.vercel.app/. As of now, it already has 14 stars (I know, I am famous now! 😄), and I will continue to improve it over time.

Given that 6 years have elapsed since my first personal website, I believe it is only fitting to have a blog section where I can share my thoughts, experiences, and learnings with the world. That being said, I hope this website will last the test of time, for at least another 5-6 years, before I decide to redesign it again (I'm kidding... or am I?). If that does happen, I guess another Hello World blog post will be in order!