S/۰۶ · خدمات
اپلیکیشن موبایل و دسکتاپ
در هر جیب، روی هر میز، در هر مرورگر.
اپلیکیشن Native و چندسکویی برای iOS، اندروید، macOS، ویندوز و لینوکس، و افزونهی مرورگر. آفلاینمحور، همگام با API شما و منتشرشده در همهی فروشگاههایی که کاربرانتان از آنها اپ نصب میکنند.
- پلتفرمها
- iOS، اندروید، macOS، ویندوز، لینوکس
- همچنین
- افزونهی مرورگر
- ساختهشده
- آفلاینمحور و همگام
- ۰۱
کاربرانتان همیشه با گوشیاند، اما سرویس شما روی گوشی نیست.
- ۰۲
تیمهای میدانی با هر قطعی اینترنت کارشان را از دست میدهند.
- ۰۳
به ابزار دسکتاپی نیاز دارید که با سختافزار محلی حرف بزند.
- ۰۴
یک افزونهی مرورگر شما را دقیقاً جایی میبرد که کاربرانتان همین حالا هستند.
- D/۰۱
Native یا چندسکویی
فناوری را نیازمندی به نیازمندی انتخاب میکنیم، بر اساس کاری که اپلیکیشن باید انجام دهد و کسی که بعداً نگهش میدارد. جایی که اپ به دسترسی عمیق به دستگاه نیاز دارد کد Native مینویسیم، جایی که کدبیس مشترک شما را از دو بار ساختن همهچیز خلاص میکند همان را برمیگزینیم، و دلیلها را مکتوب میکنیم تا بشود بعداً دوباره سراغشان رفت.
شامل
- سند انتخاب فناوری، نیازمندی به نیازمندی
- نمونهی اولیهی قابل کلیک روی گوشی واقعی
- کد مشترک جایی که کمک میکند، ماژول Native جایی که نه
- برآورد هزینهی نگهداری هر گزینه
docs/stack-decision.md نیازمندی انتخاب دلیل فهرست نوبتها، بدون اینترنت Flutter یک کدبیس، SQLite روی هر دو چاپگر رسید بلوتوثی ماژول Native فقط SDKهای خود پلتفرم پشتیبانیاش میکنند ویجت صفحهی اصلی Native به WidgetKit و Glance نیاز دارد اپ دسکتاپ پذیرش Tauri نصبکنندهی کوچک، همان رابط وب دو برنامهنویس در تیم Flutter یک زبان برای نگهداری - D/۰۲
همگامسازی آفلاینمحور
اپلیکیشن از پایگاه دادهای روی خود دستگاه میخواند و در آن مینویسد، پس در زیرزمین یا توی مترو هم کار میکند. تغییرات در صف میمانند و با برگشتن اتصال همگام میشوند، و وقتی دو نفر یک رکورد را ویرایش کنند، قواعد روشنی تعیین میکند کدام بماند و هیچ چیز بیصدا گم نمیشود.
شامل
- پایگاه دادهی محلی با دادهای که هر کاربر لازم دارد
- صف تغییراتی که با بسته شدن اپ از بین نمیرود
- قواعد حل تعارض، توافقشده با شما و ثبتشده
- تستهایی که وسط همگامسازی اینترنت را قطع میکنند
docs/sync.mmd - D/۰۳
نوتیفیکیشن و بلادرنگ
بکاند شما رویدادی میفرستد و همان کسانی که باید، باخبر میشوند: نوتیفیکیشن وقتی اپ بسته است، بهروزرسانی زنده وقتی باز است. توکنهای منقضی، ساعتهای سکوت و تلاش دوباره را مدیریت میکنیم تا اعلان یک بار، بهموقع و فقط وقتی به کار میآید برسد.
شامل
- نوتیفیکیشن از طریق APNs و Firebase Cloud Messaging
- بهروزرسانی زنده با WebSocket وقتی اپ باز است
- تنظیمات اعلان که هر کاربر خودش انتخاب میکند
- لاگ تحویل، تا ببینید چه چیزی رسیده
notify · production $ notify tail --env production
✓ 10:02:11 booking.confirmed → APNs delivered 84 ms
✓ 10:02:11 booking.confirmed → FCM delivered 112 ms
✓ 10:02:14 slot.freed → ws 412 live clients
! 10:02:19 FCM token expired · device d_7f3a removed
✓ 10:30:00 reminder.24h → 38 devices, 38 delivered
- D/۰۴
اپلیکیشن دسکتاپ
اپ دسکتاپ برای کارهایی که مرورگر خوب از پسشان برنمیآید: حرف زدن با چاپگر یا کارتخوان، کار با فایلهای محلی، باز ماندن تمام روز روی میز پذیرش. هر نسخه امضا میشود، مثل هر برنامهی دیگری نصب میشود و بدون آمدن کارشناس IT خودش را بهروز میکند.
شامل
- نصبکنندهی امضاشده برای هر سیستمعامل
- بهروزرسانی خودکار، با امکان برگشت به نسخهی قبل
- دسترسی به سختافزار و فایلهای محلی هر جا لازم باشد
- پایپلاین ساختی که همهی پلتفرمها را یکجا میسازد
release/v2.4.0/ - release/
- v2.4.0/
- ClinicDesk-2.4.0-arm64.dmgmacOS · notarized
- ClinicDesk-2.4.0-x64.dmgmacOS · Intel
- ClinicDesk-2.4.0-x64-setup.exeویندوز · امضاشده
- ClinicDesk-2.4.0-x64.msiویندوز · سازمانی
- clinicdesk_2.4.0_amd64.debDebian، Ubuntu
- ClinicDesk-2.4.0.AppImageهر لینوکسی
- latest.jsonمانیفست بهروزرسانی
- CHANGELOG.mdتغییرات
- D/۰۵
افزونهی مرورگر
افزونه سرویس شما را داخل مرورگری میبرد که کاربرانتان همین حالا باز کردهاند. آن را یک بار بر پایهی استاندارد WebExtensions میسازیم، فقط دسترسیهایی را که واقعاً لازم دارد میخواهیم و از بازبینی هر فروشگاه عبورش میدهیم، همان جایی که بیشتر افزونهها گیر میکنند.
شامل
- یک کدبیس برای همهی مرورگرهای اصلی
- کمترین دسترسی ممکن، با توضیح در صفحهی معرفی
- صفحهی معرفی، تصاویر و جزئیات حریم خصوصی در فروشگاهها
- انتشار همزمان بهروزرسانیها در همهی فروشگاهها
extension · store status · v1.3.0 - Chrome Web Storeمنتشرشده
- Firefox Add-onsمنتشرشده
- Microsoft Edge Add-onsدر بازبینی · روز ۲
- سافاری، از طریق App Storeدر بازبینی
- Opera add-onsمنتشرشده
- دسترسیها محدود به storage و example.comحداقلی
- D/۰۶
انتشار در فروشگاهها
صفحههای معرفی را آماده میکنیم، بیلدها را امضا میکنیم و هر نسخه را از بازبینی فروشگاهها عبور میدهیم. نسخهی تازه اول به بخش کوچکی از کاربران میرسد و پیش از انتشار برای همه گزارشهای کرش را بررسی میکنیم، تا یک بیلد خراب فقط به چند نفر برسد، نه به همه.
شامل
- صفحهی معرفی، تصاویر و یادداشت انتشار
- کلیدهای امضا در حسابهای خود شما
- انتشار مرحلهای همراه با پایش کرش
- چکلیست انتشاری که تیمتان بتواند تکرارش کند
release · 2.4.0 روز ۱
بیلدها امضا و بارگذاری شدند
→ کافهبازار، مایکت، اپاستور و گوگلپلی
روز ۲
تست داخلی
→ TestFlight و مسیر تست داخلی گوگلپلی
روز ۳
بازبینی فروشگاهها
→ تأیید در همهی فروشگاهها
روز ۴
انتشار مرحلهای
→ ۱۰٪ کاربران، ۹۹٫۸٪ بدون کرش
روز ۷
انتشار کامل
→ همهی کاربران، با یادداشت انتشار
- ۰۱
انتخاب فناوری
Native، چندسکویی یا وب — انتخابشده برای کاربران و تیم شما، نه برای مُد.
- ۰۲
نمونهی اولیه
جریانهای قابل کلیک روی دستگاه واقعی، پیش از شروع ساخت کامل.
- ۰۳
ساخت و تست
تست خودکار و تست روی دستگاههایی که کاربرانتان واقعاً دارند.
- ۰۴
انتشار و بهروزرسانی
ارسال به فروشگاهها، انتشار مرحلهای و گزارش کرش از روز اول.
نسخهی اول معمولاً بسته به پلتفرمها و اینکه چه بخشی از آن باید بدون اینترنت کار کند، ده تا شانزده هفته طول میکشد. از همان هفتههای اول نسخهای کارا روی گوشی خودتان دارید و از آن به بعد هر هفته یک نسخهی تازه.
- هفتهی ۱ و ۲
نیازمندیها و انتخاب فناوری، و بعد نمونهی اولیهی قابل کلیک روی دستگاه واقعی.
- هفتهی ۳ و ۴
پایهها: ورود کاربر، پایگاه دادهی محلی، همگامسازی و پایپلاین ساخت.
- هفتهی ۵ تا ۱۱
قابلیتها، صفحه به صفحه، و هر هفته یک نسخهی آزمایشی در دست شما.
- هفتهی ۱۲ تا ۱۴
تست روی دستگاههایی که کاربرانتان دارند، صفحههای معرفی فروشگاه و آزمایش با کاربران بتا.
- هفتهی ۱۵ و ۱۶
بازبینی فروشگاهها و انتشار مرحلهای، با بررسی گزارشهای کرش پیش از انتشار برای همه.
کد منبع
همهی اپلیکیشنها و افزونهها در مخزن کد شما، با راهنمای ساختشان از صفر.
حسابهای فروشگاه و کلیدهای امضا
اپ با حسابهای توسعهدهندهی خود شما منتشر میشود و کلیدها جایی نگهداری میشوند که تیمتان به آنها دسترسی دارد.
فایلهای طراحی و نمونهی اولیه
همهی صفحهها و جریانها، آماده برای قابلیت بعدی یا پلتفرم تازه.
پایپلاین ساخت و انتشار
یک دستور، یا یک کلیک، برای ساخت، امضا و بارگذاری نسخهی تازه.
گزارش کرش و آنالیتیکس
داشبورد کرشها، نسخههای در حال استفاده و جریانهای اصلی، در حسابهای خود شما.
یک بررسی پس از اولین انتشار
چند هفته بعد نرخ کرش، امتیاز و نظرهای فروشگاهها را بررسی میکنیم و هر مشکلی پیدا شد، درستش میکنیم.
- Swift / SwiftUI
- Kotlin / Compose
- Flutter
- React Native
- Tauri
- Electron
- WebExtensions
- SQLite
Native یا چندسکویی؟
به کاری که اپلیکیشن انجام میدهد بستگی دارد. پس از مشاوره یکی را پیشنهاد میکنیم و دلیلش را توضیح میدهیم.
در فروشگاههای ایرانی هم منتشر میکنید؟
بله — کافهبازار، مایکت و سیباپ، در کنار اپاستور و گوگلپلی.
پس از انتشار، نگهداری با کیست؟
میتوانیم خودمان نگهداریاش کنیم، یا آن را با مستندات و پایپلاین ساختی که تیمتان بتواند اجرا کند تحویل بدهیم.
چقدر طول میکشد تا در فروشگاهها منتشر شود؟
برای بیشتر نسخههای اول ده تا شانزده هفته. بازبینی فروشگاهها معمولاً چند روز اضافه میکند، پس از همان اول برایش برنامه میریزیم.
اپلیکیشن و حسابهای فروشگاه مال خودمان است؟
بله. اپ با حسابهای توسعهدهندهی شما منتشر میشود و کلیدهای امضا مال شماست. ما بهعنوان عضو دعوتشده در حسابهایتان کار میکنیم و هر وقت بخواهید کنار میرویم.
بگویید چه چیزی میسازید.
هر پروژه با یک مشاوره شروع میشود: شما ایده و هر چه میدانید را میآورید و ما از دلش طرحی درمیآوریم که بشود رویش ساخت.
رزرو مشاوره