Materializr
開源參數式 3D CAD 給創客 — 受限草圖、實體建模、螺紋、SVG 與文字雕刻、STL/STEP 匯出。Android、iPad、Linux、Mac、Windows。Vibe 編碼。
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
ต้องมี Node.js 24.x และ npm 11.x (รุ่นที่ใช้ทดสอบโปรเจกต์; มี .nvmrc / .node-version ให้เครื่องมือจัดการเวอร์ชัน)檢視完整 README ↗
เว็บออกแบบบรรจุภัณฑ์: กำหนดขนาดและวัสดุ ดูภาพพับ 3D ออกแบบลาย และส่งออกแบบผลิต
ต้องมี Node.js 24.x และ npm 11.x (รุ่นที่ใช้ทดสอบโปรเจกต์; มี .nvmrc / .node-version ให้เครื่องมือจัดการเวอร์ชัน)
จากโฟลเดอร์โปรเจกต์ที่ clone/pull มา:
npm ci
npm run dev:local
เปิด http://127.0.0.1:5173 แล้วกด เริ่มใช้งานบนเครื่องนี้
.env.local, login Google, ติดตั้ง Supabase CLI เพิ่ม หรือเปิด Dockerdev:local ข้ามไฟล์ env และไม่ใช้ Supabase/AI keys ที่ค้างอยู่ใน shell จึงไม่แตะข้อมูล Cloud ของทีม.genpkg.json ก่อนล้างข้อมูลเบราว์เซอร์หรือย้ายเครื่อง127.0.0.1:5173 ให้เหมือนเดิมเสมอ: localhost:5173 และ URL/port อื่นมีพื้นที่เก็บงานแยกกันโหมดนี้แยกจาก Cloud โดยตั้งใจ ไม่ใช่การจำลองสิทธิ์เข้าถึงข้อมูล Cloud
กด V1 / V2 ที่มุมขวาบน เพื่อสลับหน้าตาได้ทันที โดยใช้ชิ้นงานและประวัติ undo ชุดเดิม เบราว์เซอร์จำเวอร์ชันที่เลือกไว้ (ครั้งแรกเริ่ม V1)
V2 อ้างอิงเฉพาะกรอบสีเทา Example Responsive ใน Figma: แถบเครื่องมือซ้าย, คลังรูปทรง, toolbar ลอย, พรีวิว 3D และแถบซูม บนจอแคบกด ••• เพื่อเปิดเครื่องมือเพิ่มเติม และกด × ที่แผงซ้ายเพื่อคืนพื้นที่วาด ไฟล์ Figma เป็นแหล่งอ้างอิงแบบอ่านอย่างเดียว
ตัวเอียง/ขีดเส้นใต้ถูกเก็บในไฟล์งาน schema 25 และยังเปิดไฟล์งานเวอร์ชันเก่าได้
เมื่อ branch นี้รวมเข้า main แล้ว และไม่มีงานในเครื่องค้างอยู่:
git switch main
git pull --ff-only
npm ci
npm run dev:local
หยุด dev server เก่าก่อนรันใหม่ หาก Git แจ้งงานค้างหรือ merge conflict ให้จัดเก็บ/แก้งานนั้นก่อน อย่าใช้ reset --hard เพื่อล้างปัญหา ไฟล์ .env.local ไม่ถูก track และคำสั่งข้างต้นไม่เขียนทับมัน
ถ้าเคยตั้ง Cloud ไว้แล้ว ให้ใช้ npm run dev แทน dev:local เพื่อใช้ config เดิม ไม่ต้องตั้ง Google OAuth ใหม่ทุกครั้งที่ pull
ต้องได้รับสิทธิ์จากผู้ดูแลโปรเจกต์ก่อน ไม่จำเป็นต้องสร้าง Supabase หรือ Google OAuth client ใหม่สำหรับทุกคน
npm run setup:cloud
คำสั่งสร้าง .env.local จาก .env.cloud.example เฉพาะเมื่อยังไม่มีไฟล์ ถ้ามีอยู่แล้วจะไม่ทับ ไม่เติมค่า และไม่แสดงคีย์ ให้เทียบสองไฟล์ด้วยตัวเอง
ให้ผู้ดูแลส่งค่าผ่านช่องทางปลอดภัย แล้วเติม 4 ช่องใน .env.local:
| ตัวแปร | ค่า |
|---|---|
VITE_SUPABASE_URL | URL ของ Supabase development/staging |
VITE_SUPABASE_PUBLISHABLE_KEY | publishable/anon key ของโปรเจกต์เดียวกัน (เปิดเผยใน browser ได้) |
SUPABASE_URL | URL เดียวกับฝั่ง browser |
SUPABASE_SECRET_KEY | secret/service-role key สำหรับ server เท่านั้น |
ตัวเลือกเพิ่มเติม (ไม่บังคับ): ANTHROPIC_API_KEY = คีย์ Anthropic ของระบบ ฝั่ง server (ห้ามใส่ใน VITE_*) ใช้กับแถบ AI บน Cloud และ BOX_SPEC_MODEL เลือกโมเดล (ค่าเริ่มต้น claude-opus-5-5; รุ่นที่รองรับและข้อแลกเปลี่ยนต้นทุน/ความเร็ว: docs/billing-freemium-pro.md §6) ถ้าไม่ตั้งคีย์ แถบ AI บน Cloud จะแจ้งว่า server ยังไม่ได้ตั้งค่า (503) — Cloud ไม่รับคีย์จากผู้ใช้ใน UI อีกต่อไป (การกรอกคีย์เองมีเฉพาะ local demo)
แพ็กเกจบน Cloud (ดู docs/billing-freemium-pro.md): Freemium ออกแบบ/ดู blueprint และ 3D ได้ แต่ไม่มีเครดิต AI และดาวน์โหลดไฟล์ผลิตไม่ได้ (พรีวิวมีลายน้ำ; ไฟล์สำรอง .genpkg.json ยังใช้ได้); ซื้อรายแบบ 149 บาท หรือ Pro 399 บาท/เดือน ยังไม่เลือกผู้ให้บริการชำระเงิน จึง ยังไม่เปิดขาย: staging/production ซ่อนปุ่มซื้อทั้งหมดและแสดง "เปิดขายเร็ว ๆ นี้" ส่วน APP_ENV เป็น development หรือ test เปิดให้ลองสั่งซื้อและกด "จำลองการชำระ (dev)" ได้ (ห้ามใช้สองค่านี้กับ environment ที่มีผู้ใช้จริง)
จากนั้นรัน:
npm run dev
เปิด http://127.0.0.1:5173 แล้วเข้าสู่ระบบ Google จริง ผู้ดูแลต้องเตรียม migrations, private buckets, Google provider, redirect URL และเพิ่มบัญชีเป็น test user ถ้า OAuth app ยังเป็น Testing ดู คู่มือ backend
ห้ามใส่ secret/service-role key ในตัวแปร VITE_*, commit env จริง หรือส่งคีย์ใน issue/PR คีย์ server มีสิทธิ์สูง ผู้ที่ไม่ได้รับสิทธิ์ควรใช้ local demo หรือขอ Supabase development แยก ไม่ใช้ production credentials
การ pull/build/dev ไม่ push migration และไม่แก้ remote project อัตโนมัติ ถ้าต้องทดสอบ backend แบบแยกในเครื่องจริง ๆ จึงค่อยใช้ Docker ตามคู่มือ backend; db:reset ล้างข้อมูล local database ไม่ใช่คำสั่งติดตั้งแอปทั่วไป
npm test
npm run build:local
npm run preview:local
หยุด dev server ก่อน preview เพราะใช้ port 5173 เหมือนกัน build:local ไม่ใช้ค่า Cloud ส่วน npm run build และ npm run preview ปกติยังอ่าน env ตาม mode เพื่อรองรับ Cloud/Vercel อย่า deploy build:local เป็น Cloud app
Browser regression ของตัวโหลด: รัน npm run dev:local เปิด /tests/browser/loading-continuity.html แล้วกด Run (เป็นชุดทดสอบแยก ไม่รวมใน npm test); fixture ตรวจ paywall/ลายน้ำด้วยตาอยู่ที่ /tests/browser/paywall.html (สลับสถานะ free / ซื้อแล้ว / Pro / Pro หมดเครดิต โดยไม่ต้องมี Supabase)
node/npm: ติดตั้ง Node.js 24 แล้วเปิด terminal ใหม่ บน PowerShell ถ้า npm.ps1 ถูกบล็อก ให้ใช้ npm.cmd แทน ไม่ต้องลดนโยบายความปลอดภัยของเครื่องEBADENGINE: ตรวจ node --version / npm --version ให้ตรงรุ่นที่ระบุ แล้วรัน npm ci ใหม่npm run dev กำลังใช้ Cloud config ที่ยังไม่ครบ ถ้าต้องการออกแบบในเครื่องให้รัน npm run dev:localsharp/native module ติดตั้งไม่ครบ: ใช้ Node รุ่นที่ระบุและ npm ci บนเครื่องนั้น ไม่คัดลอก node_modules ข้าม Windows/macOS/Linux หรือปิด optional dependencies