Building my own personal website has been a long-standing goal ever since I first learned to code.
For years, I found reasons to put it off: uncertainty about design, procrastination, and the pressure of wanting it to be “good enough.” But I finally decided to take the plunge and build a space on the web that feels like my own.
Drawing on my previous experience as a frontend engineer, I set out to create a website that reflects my interests and works. I wanted it to be visually appealing, easy to navigate, and responsive across different devices. More importantly, I wished to have a platform of my own to share my projects and publish short writings in a way that I am comfortable with.
The site is organized around a few main areas:
flowchart TD
Visitor["Visitor"] --> Home["Home"]
Home --> worklist["Work listing page"]
Home --> Writinglist["Writing listing page"]
Home --> Tags["Tags"]
Home --> About["About"]
worklist --> Work["Work"]
Tags --> Work["Work"]
Tags --> Writing["Writing"]
Writinglist --> Writing["Writing"]
Why Astro and React?
The website is built using React and Astro.
Astro gives me the speed and simplicity of a static-first site, while React give me flexibility where interactivity and dynamic UI are useful. This combination works especially well for writing and tag listing pages.
For example, visitors can choose how many post to display per page- from 10 top 100. It may be overly optimistic for now, but I really hope one day that I will have more than 100 posts to share.
Hopefully, this website will serve as a platform for me to share my thoughts, ideas, and experiences with the world. I am excited to continue building and improving my website in the future, and I hope that it will inspire others to pursue their own personal projects and passions.