Frontendda Vite bilan proyektni "uchirib" yig'ib tashlayapsiz. Chiroyli qilib TypeScript interface'laringizni yozgansiz, hamma narsa joyida.
Endi... backend...
Ko'pincha sekinlashish shu joydan boshlanadi. Frontenddagi type'laringizni endi Node.js, Python yoki Goga "tarjima" qilib chiqishingiz kerak. Ular bir-biriga mos kelishi shart.
Keyin DB schemasi haqida alohida bosh qotirasiz. Migration yozasiz.
Eng "og'riqli" joyi - tasavvur qiling, userga yangi bitta field qo'shish kerak. Nima qilasiz?
- DB migration yozasiz.
- Backenddagi DTO yoki Serializerni o'zgartirasiz.
- API endpointni logikasini to'g'irlaysiz.
- Va nihoyat frontenddagi interfaceni yangilaysiz.
Bitta maydon uchun shuncha ovoragarchilik. Ayniqsa, komandada backenddan unchalik xabari yo'q dasturchilar bo'lsa, bu narsa startapni juda sekinlashtiradi.
convex.dev aynan shu muammoni hal qilishga harakat qilyapti.
G'oya juda oddiy: "Nega hammasini bitta tilda, bitta joyda qilmaymiz?"
Baza sxemasiniyam, API funksiyalaringizniyam, auth logikangizniyam - hammasini pure TypeScript'da yozasiz. Kodingiz frontendni yonida turadi.
Eng zo'r tomoni: Bitta joyda schemani o'zgartirsangiz, butun proyekt bo'ylab autocomplete va type-checking ishlaydi. "Backenddagi type frontendga to'g'ri kelmay qoldi" degan muammo bo'lmaydi. AI yordamida generate qilsangiz bo'ladi. Har-xil cron joblar, real-time yoki file storagelariyam bor.
Bunga alternativ trigger.dev niyam ishlatib ko'rsangiz bo'ladi.
Shunaqa, do'stlar,
@mabrur_dev