CodeNewbie Community 🌱

Cover image for In progress: Portfolio current state and why I build this thing from scratch

Posted on • Updated on

In progress: Portfolio current state and why I build this thing from scratch

Alt Text

In this series: I'll cover the reasons why I build my portfolio without using a CMS, show my progress of troubleshooting, working through the mess and what I learn in between. The portfolio is in the making.
The purpose of the series: to record my process, visualize my progress for a future improvement, keep myself accountable and connect with you who may have the same journey.

Why I build my portfolio without using a CMS

Feb 15, 2021
I decided to build my web development portfolio from scratch.
Anyone with me here?

I'm sharing the URL of the current work here so you can have a quick glimpse: (
And here's the work on GitHub: (

My love for HTML, CSS and their families is solid and as a beginner web developer, I want to take this opportunity to strengthen my skills.

I had some arguments in my head before, whether to make it from scratch or use a CMS platform that I'm comfortable with like WordPress.

Do you have a hard time deciding which way to go?

For me, crafting a website on my own is a real headache - not gonna lie even for a simple static website. It gets more difficult when I tried to integrate responsive design into it. It's also a time consuming project. Using WordPress, on the other hand, is a more peaceful journey and it offers more efficient and secured integrations with other tools.

The thing is, I wouldn't get to practice my skills as much as the first option and I still don't have many projects to show my future clients. Building a functioning portfolio would make a good prove of my skill.

Therefore, I ended up taking the more heavy-lifting route with the following reasons:

  • I'm now on my vacation quarter, which means I have less busy schedule than usual. It's a perfect time to invest fully in myself.
  • I want to get more familiar with responsive design
  • I want to revise my PHP knowledge
  • I want to build a reusable portfolio theme
  • I want to record and improve my development processes
  • I want to see how much I can do with my current skills of HTML, CSS, and PHP

I'm aware that creating a portfolio from scratch like I do now may not always be an efficient choice in the future, especially when the website gets more complex or needs to scale. I'm open for transitioning to use other platform when necessary as I believe that by then, my experience will let me customize the site however I want to.

For now, I'm set in my decision of making the best of what I know and grow from there.

Current State of the work:

  • 5-page website - Testimonials, About, and Contact pages are not yet built and still point to homepage.
  • Projects page - has a temporary navigation bar and links to other project pages. Alt Text
  • Each project page - inherits the same theme and has images in place. Content is not yet edited. More projects will be added in later.
  • Responsive design - has good layout for all devices (unless you tell me otherwise - I'll appreciate it.) Alt Text Alt Text
  • PHP - switch page still incomplete. Project pages still lack variables and switch statements.
  • About page - plan to communicate more about services I can offer: web development processes, communication methods, causes I care about most and want to contribute my skills into (sustainability field). At least, I think this is what I look for when browsing others' portfolio. It's important for me to know the why behind their projects.
  • Contact page - probably linking to a third-party service which is more reliable than making a form myself. I'm interested in Typeform.

More updates to come...

Questions for today:

  1. Are you in the same journey as I am? How is your experience so far? Share in the comment or give me a link to your work.
  2. What do you think about my portfolio? Any suggestions?

Read the next article here: In progress: Portfolio favicon and a new project added

Top comments (0)