Hi everyone π
Iβm an indie developer and I recently launched SoVoyage.fr β a website that helps travelers find flight deals, promo codes, and low-cost airline offers, all in one place.
The goal:
π‘ Make it easier for people to travel more for less β with clean, fast, and always up-to-date content.
π§± How I Built SoVoyage
I wanted something fast, SEO-optimized, and easy to maintain β without relying on a heavy CMS or complex backend.
Hereβs the stack I chose:
β Astro JS
- Static site generator β fast and lightweight
- Ideal for content-focused pages like travel deals
- Full control over HTML, metadata, and SEO structure
- I use SCSS with Bootstrap for styling and layout
- Astro outputs static pages, while allowing interactivity where needed
I also integrated several helpful Astro modules:
-
astro-purgecss
β to clean up unused CSS -
astro-robots-txt
β for a clean and SEO-friendlyrobots.txt
-
@astrojs/sitemap
β automatic sitemap generation -
astro-icon
β for inline SVG icons with accessibility
These modules saved me a lot of time and helped ensure the final output is clean, fast, and well-structured.
β Markdown for Content
- Each promo or deal is written as a
.md
file - Super easy to edit, version, and deploy
- Ideal for static rendering and SEO crawling
β Dynamic Page Generation per Brand
Each airline or travel brand (Transavia, Ryanair, EasyJet...) has its own page, generated at build time from Markdown files.
That means:
- I can add or edit content with just a text file
- Astro builds individual, optimized pages like
/code-promo/transavia/
- Each page gets custom meta tags, structured data, and clean URLs
β Netlify CMS
- A lightweight admin panel for non-dev editing
- Connected to Git + Markdown β no DB needed
- Makes content updates super easy from the browser
β Firebase for Brand Ratings
While most of the site is static, I use Firebase to store and display brand ratings (like user scores for each airline).
- Ratings are pulled dynamically on the client side
- Updates happen in real time without rebuilding the site
- It keeps the site interactive without sacrificing speed
βοΈ Whatβs On the Site?
- β Promo codes for airlines like Transavia, EasyJet, Ryanair...
- β Flight deals updated manually or automatically
- β Dynamic brand ratings via Firebase
- All optimized for mobile, performance, and user clarity
π Whatβs Next?
Iβm working on expanding the site with destination pages, editorial content, and lightweight tools for budget planning.
π‘ The entire site is static, fully SEO-optimized, and passes Google PageSpeed Insights with a perfect score β 100 on all metrics, including mobile.
If you're building a content site, want to see how Astro performs in production, or just love smart travel deals, check it out:
π https://sovoyage.fr
Thanks for reading!
Top comments (0)