کلاینت کاتلین (Android)
بکاند یک spec خودکارِ OpenAPI تولید میکند — از روی همان Zod schemaهای
packages/contracts که DTOهای بکاند را تعریف میکنند. از روی این spec، یک
کلاینت نوعامنِ Kotlin با ./scripts/gen-kotlin-client.sh تولید و بهصورت
checked-in در همین ریپو زندگی میکند (ماژول :core:network از build خود اپ)
— بدون اینکه هیچ مدل یا تابعِ API را دستی بنویسد.
چی تولید میشود؟
| خروجی | تعداد | توضیح |
|---|---|---|
Data class های @Serializable | ~۷۶ | Event، Calendar، SyncPushRequest، SyncConflictDto، DeviceDto، … — دقیقاً مطابق Zod schemaهای بکاند |
| Enum ها | ~۱۰ | SyncOp.UPSERT، ItemStatus.CREATED، DevicePlatform.ANDROID، ReminderType.MINUTE، … |
| متدهای typed API | ~۳۱ | suspend fun syncPush(req): SyncPushResponseData، suspend fun verifyOtp(req): VerifyOtpResponse، … |
| تزریق Bearer auth | خودکار | توکن access در همهٔ درخواستها بهصورت خودکار در هدر Authorization ارسال میشود |