Skip to content

Latest commit

 

History

History
67 lines (49 loc) · 2.61 KB

File metadata and controls

67 lines (49 loc) · 2.61 KB

blog.veeso.dev

My personal blog built with Gleam and Lustre, powered by Blogatto.

Previously built with Gatsby, now migrated to a fully static site generated with Gleam/OTP.

Tech Stack

Technology Purpose
Gleam Programming language (compiles to Erlang/OTP)
Lustre UI component framework
Blogatto Blog engine / static site generator
Tailwind CSS Styling
Vercel Hosting

Project Structure

blog.veeso.dev/
├── src/blog/                # Gleam source code
│   ├── blog.gleam           # Entry point & Blogatto configuration
│   ├── components/          # Reusable UI components
│   ├── pages/               # Homepage and blog listing pages
│   └── template/            # Page template, topbar, footer
├── blog/                    # Markdown posts (with frontmatter)
├── assets/                  # CSS source (Tailwind input)
├── static/                  # Static files (favicon, avatar, OG image)
└── dist/                    # Generated output (after build)

Development

Prerequisites

Commands

gleam run       # Build the static site into ./dist
gleam test      # Run tests
gleam format    # Format code
just dev        # Build + start local Nginx server on port 3000

Deployment

The site is deployed to Vercel via GitHub Actions:

  • Push to main: production deployment
  • Pull requests: preview deployment

License

Resources