LaTeX bilan ishlaydigan har qanday talaba yoki tadqiqotchi biladi: texnik hujjatlarni tayyorlash uchun ya'ni ya'ni mahalliy TeX Live o'rnatish kerak yoki Overleaf kabi bulut xizmatidan foydalansh kerak. Ikkinchi varianti qulay, lekin Git sinxronizatsiyasi va ba'zi murakkab imkoniyatlar to'lov devorining ortida yashirin. Bu muammoni hal qilish uchun magistratura talabasi va LaTeX qayg'irchisi TeXbrain — brauzerda to'liq ishlaydigan, server talab qilmaydigan LaTeX muharririni yaratdi.
Nima uchun bu muhim?
LaTeX ekotizimi uzoq yillar o'zgarib kelmagan: yoki siz kompyuteringizga gigabaytlik texlive paketlarini o'rnatib, versiyalar bilan urushasiz, yoki Overleaf ga obuna bo'lib, fayllaringizni tashqi serverda saqlaysiz. TeXbrain uchinchi yo'lni taklif qiladi: hech qanday o'rnatish yo'q, hech qanday server yo'q, fayllar sizning diskingizda. Bu tex.swimmingbrain.dev manzilida ochiladi va birinchi yuklanishdan so'ng oflayn ham ishlaydi.
git clone https://github.com/swimmingbrain/texbrain.git
cd texbrain
pnpm install
pnpm dev
Texnika qanday ishlaydi: WASM va Service Worker
TeXbrainning yuragi — pdfTeX kompilyatori, u SwiftLaTeX loyihasi orqali WebAssembly (WASM) ga aylantirilgan. Natijada 1,8 MB hajmdagi yagona fayl brauzerda to'liq LaTeX dvigateli sifatida ishlaydi. Bu o'ziga xos yondashuv: kod serverga yuborilmaydi, barcha hisoblashlar mijoz tomoni (client-side) amalga oshiriladi.
Eng murakkab qism — paketlarni yuklash mexanizmi. LaTeX hujjati kompilyatsiya paytida \usepackage buyrug'i orqali ko'plab tashqi fayllarga murojaat qiladi. TeXbrain bu so'rovlarni Service Worker orqali ushlab, quyidagi tartibda qidiradi:
- Avval Cache Storage — oldin yuklangan fayllar;
- Keyin kichik bundled subset — eng kerakli paketlar to'plami;
- So'ng TeX Live 2020 aynan jsDelivr CDN dan oynab yuklanadi;
- Oxirgi chora — SwiftLaTeX stil serveri.
Har bir fayl maksimal bir marta tarmoqqa chiqadi. Birinchi muvaffaqiyatli kompilyatsiyadan keyin yadro paketlar fon rejimida oldindan yuklanadi, shuning uchun oflayn rejim haqiqatan ham ishlaydi. Muhim: tarmoqqa faqat fayl nomlari chiqadi, hujjat mazmuni hech qachon.
Fayl tizimi va Git: terminal shartsiz
TeXbrain File System Access API dan foydalangan holda loyihangiz papkasiga to'g'ri kirish huquqini oladi. Bu degani, siz fayllarni VS Code da tahrirlaysiz, Git bilan commit qilasiz, va TeXbrain ularni o'qiydi — hammasi bitta papkada. Chromium asosli brauzerlarda (Chrome, Edge, Brave) bu to'g'ri papka kirishi, Firefox va Safari da esa virtual fayl tizimi orqali emulyatsiya qilinadi.
Git integratsiyasi isomorphic-git kutubxonasi orqali amalga oshirilgan. Clone, branch, commit, push, pull — bular brauzer interfeysidan, terminalga tegmasdan bajariladi. Bu Windows ish stansiyasida yoki administrativ huquq yo'q universitet kompyuterida juda qimmatbaho.
Cheklovlar: nima hali ishlamayapti
Loyiha ochiq ravish cheklovlarini e'lon qiladi, bu professional tajriba ko'rsatadi:
- Faqat pdfTeX — XeTeX va LuaTeX yo'q. Demak,
fontspec va polyglossia paketlari ishlamaydi. Unicode shriftlari va murakkab til dasturlash kerak bo'lsa, bu yechim emas.
- Paketlar TeX Live 2020 ga pinda qilingan. Bu dvigatel format fayli (fmt) bilan moslikni saqlash uchun qilingan majburiy qadam. Yangi paketlar yoki yangilanishlar avtomatik kelmaydi.
- BibTeX va Biber yo'q. Bu eng og'ir cheklov: adabiyot ro'yxati va istinodlar tizimi to'liq yo'q. Hozircha faqat oddiy
thebibliography muhiti yoki tayyor .bbl fayli bilan ishlash mumkin.
Kimga va qayerda kerak bo'ladi
TeXbrain barcha uchun emas, lekin ayrim stsenariyada o'ziga xos afzalliklari bor:
- Chromebook va kengaytirilgan ish stansiyalari — administrator huquqi yo'q, lekin LaTeX kerak bo'lgan holatlar.
- Maxfiylik talab qiluvchi loyihalar — hujjat mazmuni brauzerning tashqariga chiqmaydi.
- Git asosida ish yuritmoqchi bo'lgan jamoalar — Overleaf to'lov devori cheksizlantirganda.
- Mahalliy AI agentlari — fayllar diskda ekanligi sababli, siz o'zingizning mahalliy LLM yoki kod yordamchingizni shu papkaga yo'naltirishingiz mumkin.
Agar sizda allaqachon qulay, sozlangan mahalliy LaTeX muhiti bo'lsa — uni o'zgartirish shart emas. TeXbrain bu yerda o'rn almashtiruvchi emas, qo'shimcha vosita sifatida ko'rilishi kerak.
Ochiq manba va jamoa
Loyiha GitHub da MIT litsenziyasi ostida yuritiladi (pdfTeX o'zi EPL 2.0 / GPL 2.0). Bu degani, siz o'zingizning serveringizga yuklab, ichki tarmoqda ishlatishingiz yoki kodga o'zgartirish kiritishingiz mumkin. Avtor aytilaricha, bir necha talaba bu muharrir bilan diplom ishlarini yozgan, ularning xatolik xabarlari yozning eng katta qismi bo'lib, birinchi tashqi pull request ham qabul qilingan.
Kelajak va ochiq savollar
Eng katta savol — BibTeX/Biber qo'llab-quvvatlanishi. Ushbu komponentlar pdfTeX dvigateli ichida emas, alohida dasturlar, shuning uchun ularni WASM ga portlash alohida ish talab qiladi. Shuningdek, TeX Live 2020 cheklovi kelajakda yangilanishi mumkin, lekin bu format fayli (fmt) mosligini ta'minlash talab qiladi.
Umumiy ko'rinishda, TeXbrain — bu vazifaga mos, yengil va mustaqil vosita. U LaTeX ekotizimasining eng og'ir qismlarini (o'rnatish, sinxronizatsiya, maxfiylik) brauzer texnologiyalaridan foydalangan holda hal qiladi. Bu Hacker News jamiyatiga ham yoqdi va bu faqat boshlanish.
Asl manba: github.com