Part 1: Source code - Astro project structure and components

This commit is contained in:
Kunthawat Greethong
2026-05-21 16:33:59 +07:00
commit 5219cf8f72
74 changed files with 14762 additions and 0 deletions

43
src/layouts/Layout.astro Normal file
View File

@@ -0,0 +1,43 @@
---
import '@/styles/global.css';
interface Props {
title: string;
description?: string;
}
const { title, description = "ดีล พลัส เทค - ระบบน้ำคุณภาพสูง ราคาโรงงาน" } = Astro.props;
---
<!doctype html>
<html lang="th">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content={description} />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Kanit:wght@400;500;600;700&family=Noto+Sans+Thai:wght@400;500;600&display=swap" rel="stylesheet" />
<title>{title}</title>
</head>
<body class="min-h-screen bg-neutral-50">
<slot />
</body>
</html>
<style is:global>
/* Page transition animations */
main {
animation: fadeIn 0.3s ease-out;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
</style>