back to blog
My Portfolio is Live: Here’s What I Learned

My Portfolio is Live: Here’s What I Learned

September 27, 2024

After weeks of hard work, I’m excited to finally share my developer portfolio with the world! My goal was to create a clean, functional, and professional site that not only highlights my skills and projects but also offers a simple, user-friendly experience. In this post, I’ll walk you through the main features of the site and share a few key lessons I learned along the way.

Key Features

1. Minimalistic UI with Shadcn UI Library

I used Shadcn UI to build clean, minimal UI components that keep the design simple and to the point, without distracting from the content.

2. Mobile-friendly UI and Theme Toggle

The website is responsive and you can easily switch between light mode and dark mode, making the site comfortable to view in any environment, especially mobile.

3. Straight-to-the-Point Homepage

The homepage is designed to be no-nonsense—my resume, projects, and contact links are all there upfront, so visitors get the essentials right away.

4. Blog (Infrequently Updated)

I’ve also added a blog, where I’ll occasionally share my thoughts and updates as I work on new projects or features.

5. Contact Page with Email Integration

The Contact page lets visitors send me a message directly, which I receive as an email for easy communication.

6. Ted Support: Your Interactive Guide

One of the coolest features is the AI chatbot, which is trained on the content from my portfolio and can answer simple questions about my work and background. Please do not bully it!

YouTube Anecdote: Portfolio Reviewed Live!

A highlight of my journey was when one of my favorite content creators, Anthony Sistilli, reviewed my portfolio live on his stream. While he was supposed to roast it, he ended up giving me positive feedback, which was kinda cooool!

The Hidden Costs of a Portfolio

Maybe I'm dumb but building the portfolio wasn’t entirely free:

  • Domain: $20/year for the custom domain.
  • OpenAI API: $5 to power the chatbot and generate embeddings.
  • Free-ish Tools: Other services like AstraDB (for storing vector data), Upstash (for caching), and Vercel (for hosting) are free for now, but may incur costs if my usage increases.

Future Plans and Enhancements

  • Switching to Open Source LLMs: Once my OpenAI API usage runs out, I plan to switch to Meta's Ollama.
  • Switching Databases: I may replace AstraDB with Postgres and use the PGVector extension. I might also replace Upstash with my own Redis DB, but that’s still undecided.
  • Hosting: I’ll stick with Vercel for now, but if needed, I’ll switch to self-hosting using a PaaS like Coolify.
  • Managing Blog Posts: Right now, blog posts are part of the project source, which triggers a rebuild on every commit. In the future, I may switch to a proper CMS or just use Obsidian to manage blog content more efficiently.

Thanks for checking out my portfolio! I’m excited to keep improving it and learning from the process. Feel free to explore and reach out if you have any questions.

— Ted