Fase 3 — Web (Nuxt 4) + landing + signup
- Get link
- X
- Other Apps
Fase 3 selesai. Build sukses. Berikut ringkasan apa yang dibangun:
Web Nuxt 4 (web/) — fully built and compiles clean
Structure:
- nuxt.config.ts — Nuxt 4, Tailwind, VueUse, API base config
- tailwind.config.ts — warna brand custom, animasi float/slide-up/fade-in, font Inter + Sora
- assets/css/tailwind.css — utility classes:
btn-primary,card,input-field,sidebar-link, dll
Composables:
- composables/useApi.ts — wrapper
$fetchdengan auto-inject Bearer token - composables/useAuth.ts — login tenant/outlet/signup, state user,
fetchMe(), logout
Layouts & Middleware:
default→ landing page (nav + footer)auth→ centered card dengan logodashboard→ sidebar nav adaptif (tenant vs outlet), top bar, mobile hamburger- middleware/auth.ts — guard semua halaman
/tenantdan/outlet
Landing page (pages/index.vue):
- Hero animasi floating dashboard mock, stats, fitur 6 card, 3 testimoni, pricing 2 tier, FAQ accordion, CTA final
Auth:
- signup.vue — 2 step: form (dengan checkbox copy HP/password ke outlet 1) → OTP via WA deep-link
- login.vue — toggle Outlet vs Pemilik
Tenant dashboard: overview cross-outlet, per-outlet cards, laporan, outlet list, billing/subscription
Outlet POS: dashboard hari ini, order list + filter status, order baru (pilih pelanggan + service + qty), order detail (advance status + WA nota), pelanggan, layanan, laporan
Backend — endpoint baru ditambahkan:
GET /auth/me— return user info dari JWTGET /reports/outlet-summary— KPI hari ini untuk outlet dashboardGET /reports/tenant-summary— breakdown per-outlet untuk tenant dashboardGET /reports/outlet?period=daily|weekly|monthlyGET /reports/tenant?period=daily|weekly|monthlyGET /ordersdanGET /orders/:id— diperkaya dengancustomer_name,customer_phone,total_price,items[].service_name/subtotal
Dev command: cd web && bun dev (port 3000, butuh backend di port 3001).
- Get link
- X
- Other Apps
Comments
Post a Comment