Building My Portfolio Website

After nine months of learning and building projects, I’m finally creating a portfolio website.

This is different from other projects because it’s not just about code it’s about presenting myself and my work.

Why I Need a Portfolio

To show my work: GitHub is great, but a portfolio lets me present projects in a more polished way.

To practice design: I want to improve my design and CSS skills.

For job applications: When I start applying for jobs, I’ll need a place to showcase my work.

To reflect on progress: Building a portfolio is making me realize how much I’ve learned.

What I’m Including

About section: Who I am, what I’m learning, what I’m interested in.

Projects: My best projects with descriptions, technologies used, and links to code/demos.

Skills: Technologies I’m comfortable with.

Contact: How to reach me.

I’m keeping it simple. I’ve seen portfolios that are too complex and overwhelming.

Design Decisions

Simple and clean: I’m not a designer, so I’m focusing on clarity over complexity.

Mobile-first: I’m designing for mobile first, then adding styles for larger screens.

Fast loading: No heavy images or animations. Just clean, fast HTML and CSS.

Accessible: I’m trying to make it accessible with semantic HTML, good contrast, and keyboard navigation.

Dark mode: I’m adding a dark mode toggle because I like dark mode and it’s fun to implement.

Technical Choices

Plain HTML, CSS, JavaScript: No framework. I want to show I understand the fundamentals.

Responsive design: Using CSS Grid and Flexbox for layouts that work on all screen sizes.

Semantic HTML: Using proper HTML5 elements for better accessibility and SEO.

CSS custom properties: For colors and spacing, making it easy to maintain.

Vanilla JavaScript: For the dark mode toggle and smooth scrolling.

Challenges I’m Facing

Choosing projects to showcase: I’ve built dozens of projects, but most are learning exercises. I have to choose the ones that actually demonstrate skills.

Writing about myself: Describing my skills and experience is harder than I expected. I’m still learning, so what do I say?

Design: Making it look good is challenging. I’m a developer, not a designer.

Content: What to include? What to leave out? How much detail?

Perfectionism: I keep tweaking things instead of shipping. I have to force myself to publish.

What I’m Learning

Content matters more than design: A simple site with good content is better than a fancy site with weak content.

Show, don’t tell: Instead of saying “I know React,” show a project built with React.

Keep it simple: I’m trying to add animations and fancy effects, but simple looks better.

Mobile-first is easier: Designing for mobile first, then adding desktop styles, is easier than the reverse.

Accessibility is important: Using semantic HTML and good contrast makes the site better for everyone.

Mistakes I’m Making

Overthinking the design: I’m spending too much time on design instead of just shipping.

Too much text: My first version has way too much text. I’m cutting it down significantly.

Trying to be perfect: I keep finding things to improve. At some point, I have to just publish.

Not getting feedback: I should show it to others before publishing.

What I’m Proud Of

It’s live: I’m actually finishing and publishing it.

It’s responsive: Works well on mobile, tablet, and desktop.

It’s fast: Loads quickly with no unnecessary bloat.

It represents me: It’s simple and focused, which reflects how I approach development.

What I’ll Improve

Add more projects: As I build more, I’ll add them.

Better project descriptions: I need to explain the problems I solved, not just the technologies I used.

Blog section: I want to add a blog to share what I’m learning.

Better images: My project screenshots could be better.

Testimonials: If I do freelance work, I’ll add client testimonials.

Advice for Building Your Portfolio

Start simple: Don’t try to build the perfect portfolio. Build something simple and improve it over time.

Focus on projects: Your work matters more than fancy design.

Show your best work: Quality over quantity. 3 good projects are better than 10 mediocre ones.

Explain your projects: Don’t just list technologies. Explain what problem you solved and how.

Make it personal: Your portfolio should reflect who you are.

Get feedback: Show it to others and ask for honest feedback.

Ship it: Don’t wait for perfection. Publish and improve over time.

What’s Next

Now that I have a portfolio, I want to:

  • Add more projects as I build them
  • Improve the design based on feedback
  • Add a blog section
  • Maybe add animations (subtle ones)
  • Keep it updated as I learn new skills

Reflections

Building a portfolio is different from other projects because it’s forcing me to:

  • Reflect on what I’ve learned
  • Choose my best work
  • Present myself professionally
  • Think about design and user experience

It’s also making me realize how much I’ve learned in nine months. When I started, I couldn’t have built this. Now it feels straightforward.

That’s progress.

If you’re learning to code, build a portfolio. It doesn’t have to be perfect. It just has to exist.

You can always improve it later.