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

200
.omc/project-memory.json Normal file
View File

@@ -0,0 +1,200 @@
{
"version": "1.0.0",
"lastScanned": 1778722765790,
"projectRoot": "/Users/kunthawatgreethong/Gitea/dealplustech-emdash",
"techStack": {
"languages": [
{
"name": "JavaScript/TypeScript",
"version": ">=20.0.0",
"confidence": "high",
"markers": [
"package.json"
]
},
{
"name": "TypeScript",
"version": null,
"confidence": "high",
"markers": [
"tsconfig.json"
]
}
],
"frameworks": [
{
"name": "astro",
"version": "6.1.7",
"category": "fullstack"
}
],
"packageManager": "npm",
"runtime": "Node.js 20.0.0"
},
"build": {
"buildCommand": "npm run build 2>&1 | tail -5",
"testCommand": null,
"lintCommand": null,
"devCommand": "npm run dev",
"scripts": {
"dev": "astro dev",
"build": "astro build",
"preview": "astro preview",
"astro": "astro"
}
},
"conventions": {
"namingStyle": null,
"importStyle": null,
"testPattern": null,
"fileOrganization": "type-based"
},
"structure": {
"isMonorepo": false,
"workspaces": [],
"mainDirectories": [
"public",
"src"
],
"gitBranches": null
},
"customNotes": [],
"directoryMap": {
"dist": {
"path": "dist",
"purpose": "Distribution/build output",
"fileCount": 1,
"lastAccessed": 1778722765769,
"keyFiles": [
"index.html"
]
},
"public": {
"path": "public",
"purpose": "Public files",
"fileCount": 0,
"lastAccessed": 1778722765772,
"keyFiles": []
},
"src": {
"path": "src",
"purpose": "Source code",
"fileCount": 1,
"lastAccessed": 1778722765772,
"keyFiles": [
"env.d.ts"
]
},
"src/components": {
"path": "src/components",
"purpose": "UI components",
"fileCount": 0,
"lastAccessed": 1778722765773,
"keyFiles": []
},
"src/pages": {
"path": "src/pages",
"purpose": "Page components",
"fileCount": 32,
"lastAccessed": 1778722765773,
"keyFiles": [
"about-us.astro",
"all-products.astro",
"contact-us.astro"
]
}
},
"hotPaths": [
{
"path": "src/layouts/BaseLayout.astro",
"accessCount": 4,
"lastAccessed": 1778764408392,
"type": "file"
},
{
"path": "CLAUDE.md",
"accessCount": 3,
"lastAccessed": 1778722935903,
"type": "file"
},
{
"path": "src/pages/all-products.astro",
"accessCount": 3,
"lastAccessed": 1778765063509,
"type": "file"
},
{
"path": "src/pages/เครื่องเชื่อม-hdpe.astro",
"accessCount": 2,
"lastAccessed": 1778728155229,
"type": "file"
},
{
"path": "src/pages/ระบบรั้วไวน์แมน.astro",
"accessCount": 2,
"lastAccessed": 1778764284029,
"type": "file"
},
{
"path": "astro.config.mjs",
"accessCount": 1,
"lastAccessed": 1778722802839,
"type": "file"
},
{
"path": "src/styles/global.css",
"accessCount": 1,
"lastAccessed": 1778722802869,
"type": "file"
},
{
"path": "package.json",
"accessCount": 1,
"lastAccessed": 1778722802930,
"type": "file"
},
{
"path": "src/layouts/Layout.astro",
"accessCount": 1,
"lastAccessed": 1778722809476,
"type": "file"
},
{
"path": "src/pages/index.astro",
"accessCount": 1,
"lastAccessed": 1778722845170,
"type": "file"
},
{
"path": "PROJECT_PDF_GUIDE.md",
"accessCount": 1,
"lastAccessed": 1778722854338,
"type": "file"
},
{
"path": "src/components/common/StickyBottomCTA.astro",
"accessCount": 1,
"lastAccessed": 1778722894184,
"type": "file"
},
{
"path": "src/pages/อุปกรณ์ปรับอากาศ.astro",
"accessCount": 1,
"lastAccessed": 1778763831615,
"type": "file"
},
{
"path": "src/pages/ท่อ-xy-lent.astro",
"accessCount": 1,
"lastAccessed": 1778763831668,
"type": "file"
},
{
"path": "src/pages/รั้วเทวดา.astro",
"accessCount": 1,
"lastAccessed": 1778763831720,
"type": "file"
}
],
"userDirectives": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "02c17e1c-9216-463e-bf95-4f5f78cefc4f",
"ended_at": "2026-05-11T03:34:19.588Z",
"reason": "resume",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "086c93b8-ed5c-4f49-b508-44ed650577bc",
"ended_at": "2026-05-12T02:21:51.006Z",
"reason": "resume",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "27234eb1-24d7-4a70-84b9-be18df166f36",
"ended_at": "2026-05-14T13:01:59.693Z",
"reason": "resume",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "53a89674-cfb8-4c92-938b-4e5ae0bd3f1f",
"ended_at": "2026-05-17T06:13:48.424Z",
"reason": "prompt_input_exit",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "77cb8f65-501a-417d-8d97-926fcba021ef",
"ended_at": "2026-05-12T23:24:48.258Z",
"reason": "other",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "815b1c30-de13-4272-8eed-0902f816df2d",
"ended_at": "2026-05-06T10:48:43.865Z",
"reason": "resume",
"agents_spawned": 10,
"agents_completed": 9,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "881caeef-0afc-463f-9bfd-74c45283e671",
"ended_at": "2026-05-05T01:30:53.461Z",
"reason": "resume",
"agents_spawned": 0,
"agents_completed": 0,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "c1885857-6101-4fc3-820f-0dff42f3c723",
"ended_at": "2026-05-07T04:33:10.787Z",
"reason": "prompt_input_exit",
"agents_spawned": 1,
"agents_completed": 1,
"modes_used": []
}

View File

@@ -0,0 +1,8 @@
{
"session_id": "e755b3ef-8dbf-470c-8a00-a71497e48536",
"ended_at": "2026-05-05T04:07:42.708Z",
"reason": "prompt_input_exit",
"agents_spawned": 3,
"agents_completed": 3,
"modes_used": []
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-05T02:38:54.176Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-05T03:48:13.806Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-05T04:01:34.647Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T03:38:55.431Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:07:01.729Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:07:19.715Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:08:04.800Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:12:51.569Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:23:46.942Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:50:17.477Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:50:37.702Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T04:51:15.894Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T05:06:20.219Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T05:10:42.655Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T05:40:48.596Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-06T11:25:39.857Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-07T02:48:25.590Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,16 @@
{
"created_at": "2026-05-07T02:54:46.705Z",
"trigger": "auto",
"active_modes": {},
"todo_summary": {
"pending": 0,
"in_progress": 0,
"completed": 0
},
"wisdom_exported": false,
"background_jobs": {
"active": [],
"recent": [],
"stats": null
}
}

View File

@@ -0,0 +1,4 @@
{
"updatedAt": "2026-05-07T04:33:10.977Z",
"missions": []
}