🚀 نقشه راه MVP
وبسایت + پنل کاربری دکتر الهه رشیدبیگی
لانچ سریع در 6 هفته | ثبتنام 30 ثانیهای با OTP | 3 ابزار کلیدی | رزرو آنلاین | پرداخت امن | بلاگ SEO-محور
🏗️ معماری Separation of Concerns
تفکیک واضح: WordPress برای محتوا، Next.js برای اپلیکیشن
Marketing + Blog
WordPress
انتشار روزانه محتوا، بلاگ SEO-محور، صفحات لندینگ
Panel + Dashboard
Next.js 14
ثبتنام OTP، داشبورد، ابزارها، رزرو، پرداخت
Hosting & CDN
Liara + Arvan
استقرار، CDN، ذخیرهسازی، امنیت
🔗 ارتباط بین دو سیستم
- لینکدهی ساده: CTAها از WordPress به app.domain
- ابزارهای Embed: BMI/TDEE/Macro به صورت iframe در صفحات WordPress
- داده مشترک: فعلاً بدون اتصال DB؛ کاربر با OTP از app وارد میشود
- SEO: هر دامنه Sitemap جداگانه + robots.txt مناسب
📅 نقشه راه 6 هفتهای
از شروع تا لانچ نهایی
🎨 طراحی + زیرساخت پایه
- طراحی وایرفریم و دیزاین سیستم (Figma)
- راهاندازی WordPress + قالب سبک + Yoast SEO + S3
- راهاندازی Next.js 14 + TypeScript + Tailwind
- راهاندازی MySQL (Liara) + Prisma
🔐 احراز هویت + ابزارهای محاسباتی
- پیادهسازی OTP با Kavenegar + NextAuth
- توسعه ابزارهای BMI/TDEE/Macro (لاجیک محاسبات)
- طراحی اولیه داشبورد کاربری
- تست احراز هویت و امنیت OTP
📊 داشبورد + رزرو + پرداخت
- پیادهسازی کامل داشبورد کاربری
- خوشآمدگویی شخصی + نمودار پیشرفت (Line Chart)
- چکلیست روزانه (3 آیتم) + Badgeهای ساده
- سیستم رزرو: تعریف اسلات + رزرو + وضعیتها
- پیادهسازی پرداخت زرینپال (Create/Verify + Idempotency)
📝 محتوا + SEO + Integration
- ساخت صفحات WordPress: Home, Landing کاهش وزن, Cooltech, درباره/تماس
- نوشتن و انتشار 10 مقاله بلاگ (7 کاهش وزن + 3 مکمل)
- بهینهسازی SEO داخلی (Yoast, Schema, Alt, لینکدهی)
- Embed ابزارها در WordPress (iframe به app.domain)
⚡ بهینهسازی + امنیت + آنالیتیکس
- بهینهسازی سرعت (Cache, Image Optimization, CDN)
- پیادهسازی امنیت: Rate Limiting, CSRF, WAF آروان
- سختسازی WordPress (XML-RPC, Login Limit, IP Whitelist)
- نصب و پیکربندی GA4 + Microsoft Clarity
- شروع تستهای پذیرش (Acceptance Testing)
🚀 تست نهایی + لانچ + مانیتورینگ
- تست پذیرش کامل (Acceptance Criteria)
- تست Backup/Restore
- تست پرداخت و رزرو End-to-End
- رفع باگهای نهایی و بهبود UX
- 🚀 لانچ نهایی
- راهاندازی مانیتورینگ (UptimeRobot + Sentry)
- مانیتورینگ 7 روزه و رفع مشکلات احتمالی
🎯 دامنه دقیق MVP
صفحات وبسایت (WordPress)
- صفحه اصلی (Home) با Hero قوی
- لندینگ کاهش وزن
- صفحه دستگاههای Cooltech
- بلاگ (10 مقاله اولیه)
- درباره ما / تماس با ما
- صفحه سوالات متداول (FAQ)
پنل کاربری (Next.js)
- ثبتنام/ورود با OTP (30 ثانیه)
- داشبورد شخصی + خوشآمدگویی
- 3 ابزار: BMI, TDEE, Macro
- چکلیست روزانه + نمودار پیشرفت
- رزرو آنلاین ساده
- پرداخت یک پلن (زرینپال)
👤 مسیر کاربر: از ورود تا ارزش
طراحیشده برای ایجاد ارزش فوری و انگیزه بازگشت
🌐 ورود به وبسایت
کاربر از طریق جستجوی گوگل یا شبکههای اجتماعی وارد www.domain میشود و مقاله بلاگ یا صفحه کاهش وزن را مطالعه میکند. یا همان جا از ابزار BMI استفاده میکند.
🎯 کلیک روی CTA
پس از دریافت ارزش اولیه (مطالعه یا استفاده از ابزار)، روی دکمه «شروع کنید» کلیک میکند و به app.domain هدایت میشود.
🔐 ثبتنام 30 ثانیهای
شماره موبایل وارد میکند → کد OTP دریافت میکند → کد را وارد میکند → بلافاصله وارد داشبورد میشود (بدون ایمیل، بدون رمزعبور پیچیده).
📊 ورود به داشبورد
خوشآمدگویی شخصی با نام + پیشنهاد تکمیل قد/وزن. دسترسی فوری به BMI/TDEE/Macro. نمودار پیشرفت (در ابتدا خالی). چکلیست روزانه با 3 مورد ساده. پیشنهاد رزرو مشاوره.
🔄 انگیزه بازگشت
ذخیره خودکار نتایج ابزارها. محتوای جدید روزانه در بلاگ. نمایش Badge پس از اولین ثبت وزن یا اولین رزرو. چکلیستهای روزانه برای ایجاد عادت.
💡 نکات کلیدی طراحی تجربه کاربر
- ارزش فوری: کاربر حتی قبل از ثبتنام میتواند از ابزارهای embed استفاده کند
- اصطکاک کم: ثبتنام فقط با موبایل و کد، بدون فیلدهای اضافی
- شخصیسازی تدریجی: اطلاعات تکمیلی (قد/وزن/سن) بعد از ورود به صورت پیشنهادی
- Gamification سبک: Badgeها و امتیازات برای ایجاد انگیزه، بدون پیچیدگی
- مسیر تبدیل واضح: از خواندن مقاله → استفاده از ابزار → ثبتنام → رزرو مشاوره
💻 استک تکنولوژی
Frontend (App)
- Next.js 14 (App Router)
- TypeScript
- Tailwind CSS
- shadcn/ui
- React Hook Form
- Zod (Validation)
- TanStack Query
Backend
- Next.js API Routes
- Prisma ORM
- MySQL (Liara)
- NextAuth (Credentials)
- Kavenegar SMS
- Zarinpal SDK
WordPress
- WordPress 6.x
- Gutenberg (Block Editor)
- Yoast SEO
- Arvan S3 Plugin
- Cache Plugin
- Security Hardening
DevOps
- Liara (Hosting)
- Arvan CDN
- GitHub + Actions
- Prisma Studio
- UptimeRobot
- Sentry
Analytics
- Google Analytics 4
- Microsoft Clarity
- Search Console
- Sentry (Errors)
Tools
- Figma (Design)
- VS Code
- Postman/Insomnia
- Chrome DevTools
🗄️ مدل دیتابیس (Prisma Schema خلاصه)
model User {
id String @id @default(cuid())
phone String @unique
name String?
gender String? // 'male' | 'female' | null
birthDate DateTime?
heightCm Int?
activity String? // سطح فعالیت
createdAt DateTime @default(now())
}
model OtpCode {
id String @id @default(cuid())
phone String
codeHash String // هششده
expiresAt DateTime
attempts Int @default(0)
createdAt DateTime @default(now())
}
model Measurement {
id String @id @default(cuid())
userId String
date DateTime @default(now())
weightKg Decimal
bodyFat Decimal?
note String?
}
model MacroPlan {
id String @id @default(cuid())
userId String
goal String // 'loss' | 'maintain' | 'gain'
tdee Int
calories Int
proteinG Int
carbsG Int
fatG Int
}
model Booking {
id String @id @default(cuid())
userId String
slotStart DateTime
status String // 'PENDING' | 'CONFIRMED' | 'CANCELED'
notes String?
}
model Payment {
id String @id @default(cuid())
userId String
amount Int
authority String
refId String?
status String // 'PENDING' | 'SUCCESS' | 'FAILED'
idempotencyKey String @unique
}
model Reward {
id String @id @default(cuid())
userId String
type String // 'FIRST_LOG', 'WEEK_STREAK', ...
createdAt DateTime @default(now())
}
🔌 API Endpoints کلیدی
🔐 Auth
POST /api/auth/request-otpPOST /api/auth/verify-otp
👤 Profile
GET /api/profilePUT /api/profile
📊 Measurements
GET /api/measurementsPOST /api/measurements
🧮 Tools
POST /api/macro/calcPOST /api/macro/save
📅 Booking
GET /api/booking/slotsPOST /api/booking
💳 Payment
POST /api/payment/createGET /api/payment/verifyPOST /api/payment/webhook
🔒 امنیت و حریم خصوصی
امنیت OTP
- Rate Limit: 3 درخواست/10 دقیقه
- ذخیره OTP بهصورت Hash
- انقضا 3 دقیقه
- محدودیت تلاش (3 بار)
- لاگ تمام درخواستها
امنیت Session
- HttpOnly Cookie
- SameSite=Lax
- Secure (HTTPS)
- CSRF Token
- Session Timeout
WordPress Security
- محدودیت /wp-admin به IP
- غیرفعالسازی XML-RPC
- WAF آروان
- Login Attempt Limit
- Auto-Update Security Patches
Validation & Backup
- اعتبارسنجی با Zod
- Sanitization ورودیها
- بکاپ روزانه (30 روز)
- تست Restore ماهانه
- Encryption در انتقال و ذخیره
💰 هزینههای ماهانه تقریبی
| سرویس | شرح | هزینه تقریبی (تومان) |
|---|---|---|
| Liara | Next.js Server + WordPress Managed | 2,000,000 - 4,000,000 |
| Arvan CDN | CDN + SSL + WAF | 300,000 - 800,000 |
| Arvan S3 | Object Storage برای Media | 200,000 - 700,000 |
| Kavenegar | SMS (OTP + Notifications) | 200,000 - 600,000 |
| Domain + SSL | دامنه .ir + SSL رایگان | 100,000 |
| Zarinpal | کارمزد تراکنش (متغیر) | بر اساس تراکنش |
| جمع کل تقریبی | 3,000,000 - 7,000,000 | |
📊 بهینهسازی هزینهها
- شروع با پلن پایه: در ابتدا از پلنهای کوچکتر استفاده و با رشد ترافیک ارتقا دهید
- CDN: آروان تا سقف مشخصی رایگان است؛ هزینه فقط برای حجم بالا
- Caching: استفاده درست از Cache میتواند تا 70% ترافیک سرور را کاهش دهد
- Image Optimization: تبدیل به WebP/AVIF حجم را تا 60% کاهش میدهد
- SMS: با هوشمندی در ارسال (فقط موارد ضروری) هزینه کنترلپذیر است
✅ معیارهای پذیرش MVP
شرایطی که باید قبل از لانچ نهایی برآورده شوند
عملکرد
- ثبتنام کامل زیر 30 ثانیه
- TTFB < 800ms (App)
- LCP < 2.5s (صفحات کلیدی)
- CLS < 0.1
- INP < 200ms
عملکرد
- ورود با OTP موفق
- نمایش داشبورد + 3 ابزار
- نمودار پس از ثبت اولین وزن
- رزرو تا SMS تایید
- پرداخت تا تایید نهایی
محتوا و SEO
- 10 مقاله منتشر با Yoast Score > 80
- Sitemap فعال و ثبت در Search Console
- robots.txt صحیح
- Schema Markup (Article, FAQ)
- تمام تصاویر Alt دارند
امنیت
- SSL فعال و A+ در SSL Labs
- Rate Limiting روی OTP/API
- WAF آروان فعال
- WordPress Hardening کامل
- بکاپگیری تستشده
🚫 موارد خارج از MVP (برای فازهای بعد)
- ❌ Email Marketing
- ❌ PWA و Push Notifications
- ❌ Gamification کامل (فقط Badge ساده)
- ❌ دستیار هوشمند 24/7
- ❌ یادآورهای خودکار
- ❌ اتصال Google Calendar دوطرفه
- ❌ گزارشهای پیشرفته PDF
📋 نقشه راه آینده
فیچرها به ترتیب اولویت پس از تثبیت MVP
فاز 2
2-4 ماه بعد- یادآوریهای هوشمند (SMS/In-App)
- Google Calendar دوطرفه
- پروفایل کاملتر + Onboarding
- توصیههای شخصیسازیشده
- گزارش هفتگی/ماهانه
- ارتقا Gamification
فاز 3
4-8 ماه بعد- PWA (نصب روی موبایل)
- Push Notifications
- دستیار هوشمند 24/7
- چالشهای گروهی
- طبعشناسی رایگان
- DM Automation اینستاگرام
فاز 4
8+ ماه بعد- آنالیز ژنتیک
- رژیم مزوبولیک
- Membership چندسطحی
- دورههای آنلاین
- وبینارها
- پنل B2B برای کلینیکها
هر فاز پس از تحلیل داده و بازخورد کاربران آغاز میشود
📊 طراحی داشبورد کاربری
🎨 اجزای کلیدی داشبورد
👋 خوشآمدگویی شخصی
«سلام [نام]! امروز چطوری هستی؟»
📈 نمودار پیشرفت
Line Chart نمایش وزن در زمان (خالی تا اولین ثبت)
✅ چکلیست روزانه
- ثبت وزن/وعده اصلی
- 20 دقیقه پیادهروی
- نوشیدن 6-8 لیوان آب
🧮 ابزارهای سریع
- BMI: محاسبه شاخص توده بدنی
- TDEE: کالری روزانه مورد نیاز
- Macro: تقسیم درشتمغذیها
🏆 Gamification سبک
- Badge «اولین قدم»
- Badge «هفته اول»
- شمارش امتیاز ساده
💡 پیشنهادات
«برای نتیجه بهتر: قد/سن/فعالیت را کامل کن»
«اسلاتهای رزرو: 10:30، 12:00، 17:15»
🎨 اصول طراحی UI/UX
رنگبندی
- Primary: سبز #8BC32C
- Secondary: بنفش #7C3AED
- Background: خاکستری روشن
تایپوگرافی
- فونت اصلی: Vazirmatn یا IRANSans
- اندازهها: 14-16px پایه
- وزنها: 400 (Regular), 600 (SemiBold), 700 (Bold)
- فاصله خطوط: 1.6-1.8
🎯 چرا این معماری؟
✅ مزایا
- انتشار سریع محتوا: WordPress برای بلاگ روزانه بهینه است
- SEO قوی: WordPress + Yoast برای سئو محتوا بینظیر است
- امنیت بالاتر: جداسازی داده کاربران از محتوا
- مقیاسپذیری: هر بخش مستقل Scale میشود
- تیمورک بهتر: تولید محتوا و توسعه اپ مستقل
- هزینه بهینه: پرداخت فقط برای منابع مورد نیاز
⚠️ چالشها و راهحلها
- چالش: مدیریت دو سیستم
راهحل: خودکارسازی Deploy با GitHub Actions - چالش: همگامسازی داده
راهحل: در MVP نیازی نیست؛ فاز 2 با API - چالش: یکپارچگی UX
راهحل: طراحی سیستم مشترک، Header/Footer یکسان
🚀 آماده برای شروع؟
با این نقشه راه، در 6 هفته یک MVP کامل و قابل استفاده خواهید داشت
1️⃣-2️⃣
هفته 1-2
زیرساخت + طراحی + OTP + ابزارها
3️⃣-4️⃣
هفته 3-4
داشبورد + رزرو + پرداخت + محتوا
5️⃣-6️⃣
هفته 5-6
بهینهسازی + امنیت + تست + لانچ
🎉
پایان هفته 6: لانچ و موفقیت!
سیستم کامل، امن و آماده برای رشد