Vaycode Website Revamp
Context
Vaycode’s website is my main portfolio and the first thing most potential clients see. I wanted it to reflect how I work: straightforward, reliable, and focused on real outcomes. As my business evolved and my audience widened, the limits of my old site became obvious. It was time for a new foundation that would make my work easier to present and update, in both English and French.
Problem
Keeping the old site running smoothly got harder every year. Projects looked different from each other and sometimes got out of sync between languages. Every update risked introducing small errors or accidentally leaving something untranslated. The stack I used before was too heavy for a solo developer and made hosting less flexible. Plus, the design had become a bit cluttered. It was good for showing work, but not for telling clear stories.

What Changed
To fix these issues, I rethought the whole platform. I built the new site with SvelteKit and TypeScript for speed and simplicity. Instead of sticking with Tailwind, I wrote my own CSS for lighter pages and more control over the look. From now on, every project and case study lives in a Markdown file with a few simple checks that make sure nothing is missing and both languages stay up to date.
I also designed a new SVG logo and made sure it looks sharp at any size. Hosting is now on my own Linux server with Docker, so I never worry about platform restrictions or losing access. Deployments go through GitHub Actions. Every change is tested automatically and rolled out seamlessly. If anything goes wrong, I can reverse updates in a matter of seconds.
Managing Content
Each case study follows a checklist. It has a clear context, a problem, decisions made, and the results. The same goes for translations. The system will not let me publish unless everything is complete in both English and French. Every case study follows the same clean structure, which means adding new work is much easier and there is no risk of missing important info.
Results
Here is how the new site stacks up based on real audits and resource numbers:
| Metric | old.vaycode.com | vaycode.com | Change |
|---|---|---|---|
| Performance | 98 | 100 | +2 |
| Accessibility | 89 | 96 | +7 |
| Best Practices | 100 | 100 | 0 |
| SEO | 100 | 100 | 0 |
The audits were run using Lighthouse. Reports are available if you want to see the details.
Now, the total bundle size for the old site was about 1151 KB, with 614 KB actually transferred to browsers. The new site sends just 153 KB (compressed) and 69 KB transferred. That is a reduction of nearly 90 percent. This means pages load much faster and use less bandwidth.
| Site | Probe Location | Total (ms) | DNS | TCP | TLS | TTFB |
|---|---|---|---|---|---|---|
| old.vaycode.com | Falkenstein, DE | 579 | 34 | 5 | 14 | 525 |
| old.vaycode.com | Buffalo, US | 254 | 35 | 14 | 45 | 159 |
| old.vaycode.com | Singapore, SG | 993 | 64 | 1 | 124 | 802 |
| Average | 609 | |||||
| Min | 254 | |||||
| Max | 993 | |||||
| vaycode.com | Falkenstein, DE | 197 | 62 | 67 | 33 | 34 |
| vaycode.com | Ashburn, US | 365 | 63 | 94 | 104 | 104 |
| vaycode.com | Singapore, SG | 532 | 44 | 160 | 162 | 166 |
| Average | 365 | |||||
| Min | 197 | |||||
| Max | 532 |
The new Vaycode website consistently responds faster across global locations, with the average drop in latency from 609 ms to 365 ms. Largest improvement is seen in Europe.

Takeaways
The site now loads instantly and is easy to keep bilingual. Publishing or updating content is fast, and I never worry about mistakes or translation errors slipping through. The look is crisp and minimalist, in line with my philosophy as a developer. Clients and visitors have given positive feedback about the clarity and speed.
If you want to see the technical details or the full Lighthouse and CI reports, let me know.
