Open-Source Cold Email & Warmup Platform
Warmbly 是开源的冷邮件平台:温暖您的邮箱、发送活动、并对每条回复进行分流。可在我们的云端运行,也可自行托管整套系统。
AI 翻译
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗PR-OS เป็นโครงโปรเจกต์สำหรับส่งต่อโปรแกรมเมอร์เพื่อพัฒนาระบบบริหารจัดการงานประชาสัมพันธ์ของหน่วยงานเทศบาล โดยเน้นการบันทึกงาน กำหนดผู้รับผิดชอบ แสดงตารางงานบนจอมอนิเตอร์ รับทราบงาน แจ้งเตือน และรายงานผู้บริหาร
สถานะปัจจุบัน: Phase 1 MVP กำลังพัฒนา — เชื่อมต่อ Supabase จริงแล้ว (Auth + PostgreSQL + RLS) พร้อมฟีเจอร์หลักที่ใช้งานได้จริง: เข้าสู่ระบบด้วย username, ตารางงาน, เพิ่ม/แก้ไข/เผยแพร่/ยกเลิกงาน + audit log, มอบหมาย/รับทราบ, จอมอนิเตอร์ (monitor-safe), ไฟล์แนบส่วนตัว, รายงานผู้บริหาร + ส่งออก Excel/PDF, คิวแจ้งเตือน และหน้าตั้งค่าผู้ดูแล ดูรายละเอียดความคืบหน้าที่ docs/14-implementation-status.md
หมายเหตุ:
- การส่งแจ้งเตือนจริงผ่าน LINE/Email ยังทำงานโหมดจำลอง เพราะยังไม่ได้ใส่ credential ของ provider
- Supabase project ถูก pause (แผนฟรี pause หลังไม่มี activity 7 วัน) ต้อง restore ก่อนรันระบบ — ขั้นตอนอยู่ใน
docs/15-operations-runbook.md- migration
0009และ0010ยังไม่ได้รันบน Supabase จริง
docs/
01-vision-and-scope.md
02-requirements-prd.md
03-user-flows.md
04-data-model.md
05-api-contract.md
06-ui-screens.md
07-implementation-plan.md
08-security-and-permissions.md
09-notification-design.md
10-handoff-checklist.md
11-recommended-skills.md
12-visual-design-direction.md
13-setup-free-tier.md
14-implementation-status.md สถานะละเอียด: ทำแล้ว/ยังเหลือ
15-operations-runbook.md งานที่เจ้าของโปรเจกต์ต้องทำเอง (restore, migration, credential)
16-external-review-brief.md บริบทสำหรับที่ปรึกษา/ผู้ตรวจจากภายนอก
src/
app/ หน้าจอจริง (App Router) + route handlers ใน app/api
components/ คอมโพเนนต์ UI ที่ใช้ซ้ำ
lib/ โดเมนโมดูล: events, assignments, attachments, monitor, notifications, reports, export, settings, supabase, auth
types/domain.ts Domain types ที่ใช้ร่วมกัน
supabase/
migrations/0001..0010_*.sql
docs/01-vision-and-scope.md เพื่อเข้าใจเป้าหมายและ phasedocs/02-requirements-prd.md เพื่อเข้าใจ requirement ที่ตกลงแล้วdocs/04-data-model.md และ supabase/migrations/0001_initial_schema.sqldocs/07-implementation-plan.mdหลังติดตั้ง dependency แล้วสามารถใช้คำสั่งมาตรฐานของ Next.js:
npm install
npm run dev
npm run lint
npm run typecheck
ค่า environment เริ่มจาก .env.example แล้วสร้าง .env.local ในเครื่องพัฒนา (ต้องใส่ค่า Supabase จริง ดู docs/13-setup-free-tier.md)
ระบบใช้ username/password (ไม่ใช่อีเมล) — โดย Supabase Auth ยังเก็บอีเมลเบื้องหลัง แต่ผู้ใช้ล็อกอินด้วย username สั้น ๆ ระบบจะแปลง username เป็นอีเมลฝั่งเซิร์ฟเวอร์ตอนล็อกอิน (อีเมลไม่ถูกส่งไปฝั่ง browser)
/settings เพื่อกำหนด ชื่อผู้ใช้ (username), บทบาท (role) และผูกกับรายชื่อบุคลากร/settings/monitor เป็นหน้าสาธารณะ (ไม่ต้องล็อกอิน) แสดงเฉพาะข้อมูลที่ปลอดภัย — ค่าเริ่มต้นเป็น ตารางเรียบ อ่านง่าย ตัวใหญ่ (วัน/เวลา/งาน/สถานที่/ผู้รับผิดชอบ/หมายเหตุ); จอทีวีย้อนยุคเดิมเก็บไว้ที่ /monitor?classic=1/events/[id] เก็บใน private bucket ของ Supabase Storage ดาวน์โหลดผ่านลิงก์เซ็นชื่อที่หมดอายุใน 60 วินาที (/api/attachments/[id]) — เจ้าหน้าที่ backend แนบ/ลบได้, ผู้รับมอบหมายเห็นเฉพาะงานของตัวเอง, จอมอนิเตอร์ไม่เห็นเลย/reports → ปุ่ม "ดาวน์โหลด Excel" (ไฟล์ .xlsx 4 ชีต สร้างเองโดยไม่พึ่ง dependency ภายนอก)/reports/print แล้วสั่งพิมพ์/บันทึกเป็น PDF จากเบราว์เซอร์ (ภาษาไทยไม่เพี้ยน ไม่ต้องฝังฟอนต์ใน PDF library)หมายเหตุสำหรับ dev server: ถ้ารัน npm run build ขณะ npm run dev ยังเปิดอยู่ ควร restart dev server ก่อนดูหน้าเว็บอีกครั้ง เพราะโฟลเดอร์ .next เป็น generated cache และอาจทำให้ CSS dev asset เช่น /_next/static/css/app/layout.css ตอบ 404 จนหน้าเว็บกลายเป็น HTML ดิบได้
เอกสารนี้อ้างอิงจากบทสัมภาษณ์และการคุยออกแบบระบบ ณ วันที่ 29 มิถุนายน 2569 โดยมีไฟล์สรุปต้นทางอยู่ที่ transcripts/interview_summary.md ควรตรวจทานชื่อบุคคลและคำเฉพาะจากเสียงจริงก่อนนำไปใช้เป็นเอกสารราชการ