Open to work

สวัสดีครับ ผม
ชื่อ นามสกุล

Web Developer · PHP / Laravel · TypeScript / Next.js

ผมทำได้ทั้งระบบหลังบ้านที่ข้อมูลต้องถูกต้องเสมอ และหน้าเว็บที่ลูกค้าใช้งานจริงบนมือถือ ผลงานด้านล่างทุกชิ้นเปิดลองใช้ได้จริง และดูโค้ดได้ทั้งหมด

~/portfolio
$ whoami
web developer · Laravel · Next.js

$ ls ~/projects
asset-laravel/   villa-landing/

$ cat principles.txt
1. กฎสำคัญต้องบังคับที่ database
2. แก้บั๊กทุกครั้ง ต้องมีเทสต์กันไม่ให้กลับมา
3. เว็บต้องใช้ได้จริงบนมือถือ ทั้งไทยและอังกฤษ

$ status --job
# open to work 

01 — PROJECTS

ผลงาน

หน้า dashboard ของระบบบริหารทรัพย์สิน แสดงจำนวนทรัพย์สินตามสถานะและความเคลื่อนไหวล่าสุด

ระบบบริหารทรัพย์สิน

ระบบทะเบียนครุภัณฑ์ ยืม–คืน ส่งซ่อม โอนย้าย และจำหน่าย แยกสิทธิ์ 3 บทบาท

  • ทุกการเปลี่ยนสถานะผ่าน service ตัวเดียว ที่อัปเดตทรัพย์สินและบันทึกประวัติใน transaction เดียวกัน
  • กฎสำคัญบังคับที่ database: partial unique index กันยืมซ้ำ และ trigger ห้ามแก้หรือลบประวัติ
  • conditional update กันสองคนกดเปลี่ยนสถานะพร้อมกัน ทั้งทรัพย์สินและคำขอยืม
  • สิทธิ์ของทรัพย์สินและผู้ใช้กำหนดด้วย Laravel Policy และมี 44 test cases ครอบคลุมทั้งกฎใน database และการกดปุ่มจริงใน UI รันอัตโนมัติด้วย GitHub Actions ทุกครั้งที่ push
  • Laravel 13
  • Filament 5
  • SQLite
  • PHPUnit
  • Docker

demo ใช้ server ฟรี เปิดครั้งแรกอาจต้องรอประมาณ 1 นาที · เลือกบทบาทเข้าใช้ได้ทันทีโดยไม่ต้องสมัคร

หน้าแรกของเว็บ pool villa ภาพบ้านพักริมสระยามเย็น พร้อมหัวข้อบ้านริมทะเลที่ทั้งหลังเป็นของคุณ

Landing page ที่พัก Pool Villa

เว็บแนะนำ pool villa ในหัวหิน 2 ภาษา ไทย/อังกฤษ มีห้องพัก ราคา คำถามที่พบบ่อย และช่องทางจอง

  • build เป็นไฟล์ static ทั้งเว็บ (Next.js static export) ไม่ต้องมี server วางบน GitHub Pages ฟรี และ GitHub Actions deploy ให้อัตโนมัติทุกครั้งที่ push
  • แต่ละภาษาเป็นหน้า static แยกกัน หน้าแรกเลือกภาษาตามเครื่องของผู้เข้าชม ข้อความเก็บแยกเป็น dictionary แต่ราคาและช่องทางติดต่อใช้ชุดเดียวกัน ทั้งสองภาษาจึงแสดงราคาไม่ตรงกันไม่ได้
  • ไม่มี client component เลย FAQ ใช้แท็ก <details> ของ HTML ส่วนรูป import แบบ static จึงได้ blur placeholder และ build จะ fail ถ้าไฟล์รูปหาย
  • ใช้ฟอนต์ไทยผ่าน next/font และไม่ใช้ letter-spacing กับภาษาไทย เพราะทำให้สระกับวรรณยุกต์แยกออกจากพยัญชนะ มี alt text ทั้งสองภาษา และมี overlay ให้อ่านตัวหนังสือบนรูปได้
  • Next.js 16
  • Tailwind CSS 4
  • TypeScript
  • GitHub Actions

ที่พักสมมติ ทำเป็นตัวอย่างงาน ไม่ใช่งานของลูกค้า

02 — SKILLS

เครื่องมือที่ผมใช้ทำงาน

Languages

  • PHP
  • TypeScript
  • SQL
  • HTML / CSS
  • Python

Web

  • Laravel
  • Filament
  • Next.js
  • React
  • Tailwind CSS

Database

  • SQLite
  • transactions
  • triggers
  • partial unique index

Testing

  • PHPUnit
  • browser smoke test
  • Laravel Pint
  • ESLint

Deploy & Tools

  • Git
  • GitHub Actions
  • Docker
  • Render
  • GitHub Pages
  • Claude Code

03 — CONTACT

กำลังมองหาตำแหน่ง developer

ถ้าทีมของคุณกำลังหาคนทำเว็บที่ใส่ใจทั้งความถูกต้องของข้อมูลและประสบการณ์ของผู้ใช้ ส่งอีเมลมาคุยกันได้เลยครับ