Diyorbek
Back to blog
4 min read— views

My Journey to Octane

Bitta oddiy taskdan Octane Core Team'gacha — Lexical, Typix va o'rganishdan to'xtamaslik haqida.

octanelexicaltypixopen-source
Contents

Hammasi ishlayotgan kompaniyamdagi bitta taskdan boshlandi.

Loyihaga yuqori darajada moslashuvchan rich-text editor implement qilishim kerak edi. Shu sababli turli editorlarni o'rganishni boshladim va oxiri Lexical'ni tanladim.

Lexical men o'ylagandan murakkabroq edi

Implementatsiya davomida esa Lexical men o'ylagandan ancha murakkab ekanligini tushundim. Editor state, node hierarchy, command system, update lifecycle, node transforms, selection APIs, serialization va reconciliation... Har kuni yangi narsalarni o'rganardim va tabiiyki, ko'plab muammolarga ham duch kelardim. O'sha paytlar AI u darjada rivojlanmanga, qiyin savollarga javoblarni community'dan topilardi.

Shu paytda men Lexical community'dagi tavakkal bir kishiga, Dominic'ga yozishni boshladim. Tushunmagan har bir narsani so'rardim, u esa nafaqat yechimini, balki nima uchun aynan shunday qilish kerakligini ham tushuntirib berardi.

Keyin esa bilsam — men savollar berayotgan inson Lexical muallifi, React Core Team'da ishlagan va bir nechta mashhur open source loyihalar ortidagi muhandis ekan.

Typix

Lexical bilan ishlash davomida yana bir fikr tug'ildi: nega uning ustiga o'zim xohlagan developer experience'ni beradigan framework yaratmaslik kerak?

Shu tariqa Typix loyihasini boshladim. Maqsadim Lexical'ni almashtirish emas, balki uning ustiga qulayroq API va plugin arxitekturasini qurish edi. Bir necha oy ishlaganimdan so'ng Typix'ning ilk versiyasini ham e'lon qildim.

Octane Core Team

Typix ustida ishlayotgan vaqtimda Dominic bilan aloqalarimiz yanada mustahkamlandi. Oradan ko'p o'tmay esa men uchun kutilmagan imkoniyat tug'ildi — Octane Core Team'ga qo'shildim. (13.07.2026)

Dastlab documentation va Octane website ustida ishladim. Keyinchalik compiler va runtime qismlarini o'rganishni boshladim, turli portlar va binding'lar ustida ishladim.

Keyin qadam-baqadam Octane core — Compiler va Runtime qismlariga tusha boshladim. Hozirgacha runtime'da 2 ta issue'ni fix qildim; bu yerda Michal'ga ham rahmat aytaman.

Bugungi kungacha 25–30 ga yaqin pull request create qildim.

Jamoamiz bilan tanishing

Jamoamizdagilarning deyarli barchasi Founder, kuchli tajribaga ega bo'lgan engineerlar. React'ning Core qismni yozganlardan tortib, TanStack Query asoschisi Tanner Linsley va TanStack'ning boshqa asosiy maintainerlarigacha; OpenAI Engineerlari; Next.js Team Leadi Jimmy Lai.

Yana shuni aytishim kerakki, IT sohasiga endi kirib kelgan paytlarim Jack Herringtonning YouTube videolaridan juda ko'p narsa o'rgangandim — o'shanda u men uchun ekrandagi ustoz edi. Bugun esa biz bir jamoadamiz.

Keling bir narsaga to'htalsak, Octane o'zi nima?

OctaneJS logotipi

Octane — Inferno'ning davomchisi bo'lgan tezkor JavaScript UI framework. Uni Dominic Gannaway yaratgan: u Inferno muallifi, shuningdek React, Svelte, Lexical va Ripple ustida ishlagan.

G'oyasi sodda: siz o'zingiz o'rgangan React API'da yozaverasiz, qolgan og'ir ishni kompilyator bajaradi.

Nimasi bilan ajralib turadi

Virtual DOM yo'q. Template'lar klonlanadigan node'larga va to'g'ridan-to'g'ri DOM yozuvlariga kompilyatsiya qilinadi. Ya'ni ish runtime'da emas, build vaqtida bajariladi.

Rules of Hooks yo'q. Hook'ni shart ichida yoki early return'dan keyin ham chaqirish mumkin, chunki slot'lar chaqiruv tartibi bo'yicha emas, chaqiruv joyi bo'yicha belgilanadi.

Dependency array yozish shart emas. Kompilyator effect, memo va callback'laringiz aslida nimadan foydalanayotganini o'zi aniqlaydi — React'dagi eng ko'p uchraydigan xatolar manbai shu bilan yo'qoladi.

Yaxshilangan async. Bir-biriga bog'liq bo'lmagan use() chaqiruvlari daraxt bo'ylab birma-bir suspend bo'lish o'rniga birgalikda ishga tushadi. Streaming SSR esa har bir boundary tayyor bo'lishi bilan yuboradi.

Tezlik. Rasmiy benchmark'larda barcha suite'lar bo'yicha geometrik o'rtacha React 19'dan ~2.5 barobar, Preact 10'dan ~2.7 barobar tezroq.

Migratsiya uchun ilovani qayta yozish shart emas. Mavjud React 19 ilovangizga OctaneCompat orqali "Octane islands"larni bitta komponentdan boshlab qo'shib borasiz — SSR va hydration ham ishlaydi. Faqat React Server Components ko'chmaydi; qolgani (hooks, Suspense, context, SSR) ishlayveradi.

Ekotizim. State, data, routing, UI, forms, charts va 3D uchun 52 ta rasmiy binding, jumladan TanStack, React Three Fiber, Lynx va StyleX integratsiyalari.

Sinovdan o'tgan. Runtime, kompilyator, SSR va binding'lar bo'ylab 11 500+ test bajarilgan; core suite'ning o'zida 3 900+ alohida holat bor.

Eslatma:

Octane hali beta bosqichida, ba'zi binding'lar esa texnik-preview holatida (masalan @octanejs/three).

Boshlash uchun: Documentations, Quick Start va GitHub.

Xulosa

Ortga qarasam, bularning hammasi bitta oddiy taskdan boshlangan ekan.

Ba'zida karyerangizni o'zgartiradigan narsa katta reja yoki omad emas. Shunchaki sizga berilgan vazifaga qiziqish bilan kirishish va o'rganishdan to'xtamaslik bo'ladi.

Bu esa mening Octane'ga bo'lgan sayohatimning boshlanishi edi.

Sayohatim davomida hamrohlik qilmoqchi bo'lsangiz, birga davom etamiz.

Just join me and let's win together. Telegram: @Diyorbek_dev

Tap up to 5 times

8 comments

Sign in to join the discussion.

MO
Muhammaddiyor Odiljonov

Assalomu alaykum

MJ
mrdiyorbek-juraevAuthor

Valeykum Assalom

IA
Islom Abdulakhatov

Great job. Good luck, bro!

MJ
mrdiyorbek-juraevAuthor

Thank you bro.

SH
Shamsuddinov

O'qib mazza qildim. Omad.

MJ
mrdiyorbek-juraevAuthor

Rahmat bro.

AA
Azizbek Abdullayev

Va siz portfoliongizda post yaratishni qanday yaratgandiz?! Men boshqa iloj topmay admin sahifasini yaratib kod qo'yib o'sha yerdan blog yaratigan qildim..😁 Ko'rishingiz mumkin : (dizayningiz va layoutingiz o'zimni yangi portfoliomda as qotdi!..Juda minnatdorman!..) https://azizbek-dev.vercel.app/blog

AZ
Azizbek432

Great

Replies nest up to 4 levels.