next-state-adapter
Next.js App Router bilan state management librarylarni osongina ishlata olish uchun adapter. Serverdan kelgan initial datalarni storega joylab, to'g'ri hydrate qilishga yordam beradi.
npm: https://www.npmjs.com/package/next-state-adapter
github: https://github.com/elyor-sh/next-state-adapter
Mobx'da demo app: https://next-state-adapter-mobx.vercel.app/
#next_state_adapter #nextjs #opensource
@elyor_dev
Next.js App Router bilan state management librarylarni osongina ishlata olish uchun adapter. Serverdan kelgan initial datalarni storega joylab, to'g'ri hydrate qilishga yordam beradi.
npm: https://www.npmjs.com/package/next-state-adapter
github: https://github.com/elyor-sh/next-state-adapter
Mobx'da demo app: https://next-state-adapter-mobx.vercel.app/
#next_state_adapter #nextjs #opensource
@elyor_dev
🔥5
elyor.dev
next-state-adapter Next.js App Router bilan state management librarylarni osongina ishlata olish uchun adapter. Serverdan kelgan initial datalarni storega joylab, to'g'ri hydrate qilishga yordam beradi. npm: https://www.npmjs.com/package/next-state-adapter…
next-state-adapter
Kutubxona bo'yicha kichikkina docs yozishga qaror qildim. Albatta, asosiy qismini o'zim yozgan readme bo'yicha chatgpt generatsiya qilib bergan.
docsga link: https://next-state-adapter.vercel.app/docs/intro
#next_state_adapter #nextjs #state_management
@elyor_dev
Kutubxona bo'yicha kichikkina docs yozishga qaror qildim. Albatta, asosiy qismini o'zim yozgan readme bo'yicha chatgpt generatsiya qilib bergan.
docsga link: https://next-state-adapter.vercel.app/docs/intro
#next_state_adapter #nextjs #state_management
@elyor_dev
Mobx'ga asoslangan, synxron, reactive va in-memory database. Qiziq realizatsiya. Qarab chiqishga arziydi.
https://xorma.frostin.dev/docs
#mobx #database #in_memory
@elyor_dev
https://xorma.frostin.dev/docs
#mobx #database #in_memory
@elyor_dev
xorma.frostin.dev
Xorma - a synchronous, reactive, in-memory database powered by mobx.
Xorma is the perfect state managent library for building complex frontends such as video editors, design tools, IDEs, and games.
"react": "^16.10.2"
Bugun qiziq "bug"ga duch keldim. React'ning yuqorida ko'rsatilgan versiyasida (eski projectda shu versiya ekan)
ushbu code handleSlideChange ichida necha marta setState chaqirilgan bo'lsa, shuncha marta rerender chaqirar ekan. Qiziq tarafi quyidagi codeda bunaqa muammo yo'q.
Sababi batching ekan, hozircha handleSlideChange function ichidagi codelarni ReactDOM.unstable_batchedUpdates(() => ...) ichida chaqirish yechim bo'ldi.
#react #batching #legacy
@elyor_dev
Bugun qiziq "bug"ga duch keldim. React'ning yuqorida ko'rsatilgan versiyasida (eski projectda shu versiya ekan)
document.addEventListener('keyup', handleSlideChange)ushbu code handleSlideChange ichida necha marta setState chaqirilgan bo'lsa, shuncha marta rerender chaqirar ekan. Qiziq tarafi quyidagi codeda bunaqa muammo yo'q.
<button onClick={handleSlideChange}>Press</button>Sababi batching ekan, hozircha handleSlideChange function ichidagi codelarni ReactDOM.unstable_batchedUpdates(() => ...) ichida chaqirish yechim bo'ldi.
#react #batching #legacy
@elyor_dev
⚡7✍1
Diqqat (fokus)
Oxirgi paytlarda o'zimda diqqatni bir ishda jamlash qiyin yoki imkonsiz bo'layotganligini ko'p sezyapman. Bunday muammo atrofimdagi yaqinlarimda ham kuzatilyotganini ko'p aytishyapti, yozishyapti. Bundan 10 yilcha avvallari, abituriyentlikda, qattiq o'qir edik. Bitta masala ustida soatlab o'tirib, fikr yuritishimiz mumkin edi. Ya'ni bir ishda diqqatni jamlash muammo emas edi. Hozirgi va o'sha davrni solishtiradigan bo'lsam, farq chalg'ituvchi narsalar doim yonimizda, ulardan foydalanish esa juda osonligida ekan. Qo'limizdagi gadjetlar, ijtimoiy tarmoqlar, ish bahonasida har 5 minutda ochiladigan telegram. Hamma hammasi bizdan o'g'irlayotgani bizning diqqatimiz.
O'zimda sezilgan "kasallik": har 3-4 minutda telegramni ochib bo'lar bo'lmas xabarlarni o'qish. Mute qilish ham yordam berayotgani yo'q.
Diqqatni jamlay olmaslik samaradorlikka salbiy ta'sir qiladi. 2 soatlik ish 6-7 soatga vaqt oladi. Yangi ilmlarni egallashni esa juda qiyinlashtiradi. Bunaqa holatlar e'tibordan chetda qolmasdan, sabablari bilan albatta kurashilishi kerak.
Sizda ham shunday muammo bormi? Bunday "kasallik"ga qarshi qanday kurashmoqdasiz?
@elyor_dev
Oxirgi paytlarda o'zimda diqqatni bir ishda jamlash qiyin yoki imkonsiz bo'layotganligini ko'p sezyapman. Bunday muammo atrofimdagi yaqinlarimda ham kuzatilyotganini ko'p aytishyapti, yozishyapti. Bundan 10 yilcha avvallari, abituriyentlikda, qattiq o'qir edik. Bitta masala ustida soatlab o'tirib, fikr yuritishimiz mumkin edi. Ya'ni bir ishda diqqatni jamlash muammo emas edi. Hozirgi va o'sha davrni solishtiradigan bo'lsam, farq chalg'ituvchi narsalar doim yonimizda, ulardan foydalanish esa juda osonligida ekan. Qo'limizdagi gadjetlar, ijtimoiy tarmoqlar, ish bahonasida har 5 minutda ochiladigan telegram. Hamma hammasi bizdan o'g'irlayotgani bizning diqqatimiz.
O'zimda sezilgan "kasallik": har 3-4 minutda telegramni ochib bo'lar bo'lmas xabarlarni o'qish. Mute qilish ham yordam berayotgani yo'q.
Diqqatni jamlay olmaslik samaradorlikka salbiy ta'sir qiladi. 2 soatlik ish 6-7 soatga vaqt oladi. Yangi ilmlarni egallashni esa juda qiyinlashtiradi. Bunaqa holatlar e'tibordan chetda qolmasdan, sabablari bilan albatta kurashilishi kerak.
Sizda ham shunday muammo bormi? Bunday "kasallik"ga qarshi qanday kurashmoqdasiz?
@elyor_dev
🔥9👏1
Tavsiya
Click'da senior dasturchi, Husniddin aka, "Advanced Nodejs" kursi tashkil qilibdilar. Kimga qiziq bo'lsa marhamat: https://news.1rj.ru/str/husniddinblogi/74
ELYORDEV2025NODE ushbu promokod bilan aloqaga chiqsanggiz, 15% chegirma ham qilib beradilar.
@elyor_dev
Click'da senior dasturchi, Husniddin aka, "Advanced Nodejs" kursi tashkil qilibdilar. Kimga qiziq bo'lsa marhamat: https://news.1rj.ru/str/husniddinblogi/74
ELYORDEV2025NODE ushbu promokod bilan aloqaga chiqsanggiz, 15% chegirma ham qilib beradilar.
@elyor_dev
Telegram
Husniddin | Dasturlash blogi
Assalomu alaykum!
Mening ismim Husniddin, Senior Node.js dasturchiman. Sohada 7+ yillik faoliyatim davomida bir nechta mahalliy va xalqaro kompaniyalarda ishlab tajriba orttirdim. Kasbim bo’yicha orttirgan tajribalarim, izlanishlarimga asoslanib Advanced…
Mening ismim Husniddin, Senior Node.js dasturchiman. Sohada 7+ yillik faoliyatim davomida bir nechta mahalliy va xalqaro kompaniyalarda ishlab tajriba orttirdim. Kasbim bo’yicha orttirgan tajribalarim, izlanishlarimga asoslanib Advanced…
⚡6🏆2
Bugungi arafa kuni va ertangi Hayit ayyomi muborak bo'lsin musulmon ahli!
🤝3❤2👍2🔥1
Oxirgi vaqtlarda fullstack dasturchilarga talab nisbatan oshgandek. Aksariyat vakansiyalarda fullstacklar so'ralyapti. Sababi nima ekan?
@elyor_dev
@elyor_dev
💯2
https://github.com/bartvandebiezen/file-name-conventions
https://developers.google.com/style/filenames
https://developers.google.com/style/filenames
GitHub
GitHub - bartvandebiezen/file-name-conventions: A collection of guidelines for writing file names used in web projects.
A collection of guidelines for writing file names used in web projects. - bartvandebiezen/file-name-conventions
Forwarded from Khumoyun Codes
Qudrat aka bilan bo'lgan suhbatimiz Youtube ga yuklandi. Ularning dasturlashga kirib kelishlari, hayotlari va boshqaruvga o'tishlari haqidagi qissa haqida gaplashdik. Dasturlash va o'qituvchilik tajribasi biznes bilan shug'illanishda ularga qanday ta'sir qilganini o'rgandik. Suhbat sizlarga foydali bo'ladi degan umiddamiz.
Qo'llab quvvatlash uchun, kanalga obuna, videoni ulashib, izoh qoldirish va like bosishingizni iltimos qilamiz.
P.S. Talablarga binoan bu safar suhbatga taym kodlarni ham qo'shdik, bu o'zingizga kerakli ma'lumotlarni eshitish yanada qulay bo'ladi degan niyatdamiz.
@khumoyun_codes
https://youtu.be/Ul29Gya4ga4
Qo'llab quvvatlash uchun, kanalga obuna, videoni ulashib, izoh qoldirish va like bosishingizni iltimos qilamiz.
P.S. Talablarga binoan bu safar suhbatga taym kodlarni ham qo'shdik, bu o'zingizga kerakli ma'lumotlarni eshitish yanada qulay bo'ladi degan niyatdamiz.
@khumoyun_codes
https://youtu.be/Ul29Gya4ga4
YouTube
Nega dasturchi tadbirkor bo'lolmaydi? Qudrat Abdurahimov | TechGurung
Salom dasturchilar 👋🏻
Bugalgi mehmonimiz ustozlarning ustozi Qudrat Abdurahimov. Ularning dasturlashga kirib kelishlari, hayotlari va boshqaruvga o'tishlari haqidagi qissani birga eshitamiz. Suhbat bo'yicha fikr mulohazalaringizni izohlarda yozib qoldiring…
Bugalgi mehmonimiz ustozlarning ustozi Qudrat Abdurahimov. Ularning dasturlashga kirib kelishlari, hayotlari va boshqaruvga o'tishlari haqidagi qissani birga eshitamiz. Suhbat bo'yicha fikr mulohazalaringizni izohlarda yozib qoldiring…
Framework Agnostic Core
Odatda, biz real hayotda ishlatadigan, hayolimizda aynan biz ishlatayotgan framework uchun ishlab chiqilgandek tuyiladigan kutubxonalarning (library) framework agnostic (frameworkka bog'lanmagan) core qismi bo'ladi. So'ng frameworklar uchun adapterlar yoziladi. Rasm'da shunday kutubxonalardan biri react-hook-form mobx bilan "do'stlashtirilgan" varianti.
Bu repo'da bir nechta libraryni MVVM pattern'da ishlay olishligi uchun birlashtirishga harakat qildim. Bunaqa usulda yozilgan codeda hooklar ishlatilmaydi, component uchun kerakli barcha logika VM (view-model) larda yoziladi. Modellarda esa pure data saqlanadi, hech qanaqa logika bo'lmaydi, aynan pure data. Component data'larni VM lar orqali o'qiydi, handlerlar, side-effectlar barchasi VM larda joylashadi. Buning yana bir yaxshi tarafi logicni UI dan ajratib test qilsa ham bo'ladi. ViewModellar aynan reactga bog'lanmagani sabab uni istalgan boshqa framework yoki native js da ham ishlatish mumkin. Qolgani keyingi postda..
@elyor_dev
Odatda, biz real hayotda ishlatadigan, hayolimizda aynan biz ishlatayotgan framework uchun ishlab chiqilgandek tuyiladigan kutubxonalarning (library) framework agnostic (frameworkka bog'lanmagan) core qismi bo'ladi. So'ng frameworklar uchun adapterlar yoziladi. Rasm'da shunday kutubxonalardan biri react-hook-form mobx bilan "do'stlashtirilgan" varianti.
Bu repo'da bir nechta libraryni MVVM pattern'da ishlay olishligi uchun birlashtirishga harakat qildim. Bunaqa usulda yozilgan codeda hooklar ishlatilmaydi, component uchun kerakli barcha logika VM (view-model) larda yoziladi. Modellarda esa pure data saqlanadi, hech qanaqa logika bo'lmaydi, aynan pure data. Component data'larni VM lar orqali o'qiydi, handlerlar, side-effectlar barchasi VM larda joylashadi. Buning yana bir yaxshi tarafi logicni UI dan ajratib test qilsa ham bo'ladi. ViewModellar aynan reactga bog'lanmagani sabab uni istalgan boshqa framework yoki native js da ham ishlatish mumkin. Qolgani keyingi postda..
@elyor_dev
👍2
elyor.dev
Framework Agnostic Core Odatda, biz real hayotda ishlatadigan, hayolimizda aynan biz ishlatayotgan framework uchun ishlab chiqilgandek tuyiladigan kutubxonalarning (library) framework agnostic (frameworkka bog'lanmagan) core qismi bo'ladi. So'ng frameworklar…
MVVM with Mobx.
Yuqorida keltirilgan code environment ham tanlamaydi, ham SSR ham SPA'da bir xil ishlaydi.
ViewModellar dependencylarni constructorda olgani bois testing'da juda oson mock qilish mumkin. React uchun life cycle hooklar ham VM lar ichida mavjud, shuningdek NextAuth.js (next-auth) bilan ham integratsiya qilingan.
Ishlatilgan stack: Nextjs, Mobx, react-hook-form, zod, NextAuth.js, Jest.
Nextjs bilan tug'iladigan noqulayliklarni anchaga kamaytira oladi deb o'ylayman.
Repositoryga link: https://github.com/elyor-sh/next-mobx-example
Bunday usulda yozishni taminlaydigan barcha utility helperlar src/shared/lib da joylashgan
#mvvm #mobx #nextjs
@elyor_dev
Yuqorida keltirilgan code environment ham tanlamaydi, ham SSR ham SPA'da bir xil ishlaydi.
ViewModellar dependencylarni constructorda olgani bois testing'da juda oson mock qilish mumkin. React uchun life cycle hooklar ham VM lar ichida mavjud, shuningdek NextAuth.js (next-auth) bilan ham integratsiya qilingan.
Ishlatilgan stack: Nextjs, Mobx, react-hook-form, zod, NextAuth.js, Jest.
Nextjs bilan tug'iladigan noqulayliklarni anchaga kamaytira oladi deb o'ylayman.
Repositoryga link: https://github.com/elyor-sh/next-mobx-example
Bunday usulda yozishni taminlaydigan barcha utility helperlar src/shared/lib da joylashgan
#mvvm #mobx #nextjs
@elyor_dev
⚡1
wakatime.com statistikasiga qaraganda, 2025-yilda PHPda o'rtacha php'chidan 4 marta kamroq yozibman. Ammo hali ham rezyumemda php qo'shilmagan, vaqti keldimikan?)
#php #joke
@elyor_dev
#php #joke
@elyor_dev