Arxivga qaytish
II. Klinik AI va tibbiy platformalarqo'shimchayakkamijoz anonimlashtirilgan

Hujjatlarni birgalikda tahrirlash (CRDT)

healthcare-platform (salomatlik) ekotizimi ichidagi real vaqtli hamkorlikda ishlaydigan hujjat muharriri uchun backend (Hocuspocus/Yjs CRDT + TipTap). Yakka foydalanuvchi loyihasi: hamkorlikda tahrirlash, Redis orqali gorizontal masshtablash, JWT avtorizatsiya, maxsus TipTap sxemasi.

Holat
qo'llab-quvvatlanadi
Davr
2025-01-22 → 2025-04-19
AI sessiyalar
Stek
Tillar
TypeScript
Freymvorklar · Infra
HocuspocusYjsTipTapElysiaDrizzle ORMBullMQ
§01

Umumiy ko'rinish

  • Bu nima: Hujjatlarni hamkorlikda tahrirlash serveri (paket nomi tiptap_editor) — bir nechta foydalanuvchi bitta hujjatni CRDT (Yjs) orqali real vaqtda birga tahrirlaydi. healthcare-platform salomatlik ekotizimining bir qismi (ehtimol laboratoriya/tibbiy hisobotlarni tahrirlash; TipTap sxemasida vizual shablonlar uchun SVG tugunlari mavjud). Ma'lumotlar Postgres'da saqlanadi, instansiyalar orasidagi sinxronizatsiya Redis orqali amalga oshiriladi.
  • Turi / holati / roli: api (real vaqtli backend) / maintained / solo — barcha 83 ta kommit Davron Yuldashev tomonidan yozilgan (ikki identifikator davr@Davrons-MacBook-Pro.local 82 + yul.davron.93 1 — ikkalasi ham uniki).
  • Faollik davri: 2025-01-22 → 2025-04-19 (~3 oy), 83 kommit.
§02

Stek

  • Tillar: TypeScript (Bun runtime).
  • Real-time/collab: @hocuspocus/server 2.15 + database / redis / webhook / logger kengaytmalari, Yjs 13.6 (+ y-protocols, y-websocket, y-webrtc), TipTap 2.11 (core + starter-kit + collaboration), @hocuspocus/transformer (TiptapTransformer).
  • API/infra: Elysia (+ CORS) va Express, REST (rest.ts) + Swagger/OpenAPI, ws (websocket). BullMQ (queue + queue_processors), ioredis. jose orqali JWT avtorizatsiya (+ jsonwebtoken) — JWT_SECRET bilan jwtVerify.
  • Ma'lumotlar: PostgreSQL (Drizzle ORM + pg/postgres, db/schema documents jadvali), Redis (Hocuspocus tugunlar orasidagi sinxronizatsiya + navbatlar).
  • Build: Bun, drizzle-kit migratsiyalari.
§03

Nima qilindi

Solo, 83 kommit. Koddan:

  • Hocuspocus serveri (hocuspocus.ts, 11.6 KB) hujjatlarni Postgres'da saqlash bilan (@hocuspocus/extension-database orqali load/store), masshtablash uchun Redis kengaytmasi, webhook/logger kengaytmalari.
  • JWT autentifikatsiya Hocuspocus darajasida (jwtVerify, jose) — hujjat xonasiga ulanishda tokenni tekshirish.
  • Maxsus TipTap sxemasi — o'ziga xos tugunlar CustomDiv, CustomSVG (xmlns bilan blok darajasidagi SVG), maxsus atributlar (class/style/id/onclick) — domen shablonlari uchun muharrir kengaytmasi (grafikali tibbiy hujjatlar).
  • REST + Swagger (rest.ts, swagger/) — collab serveri ustidagi HTTP qatlami.
  • Navbatlar (queue.ts, queue_processors/, BullMQ) — fonda qayta ishlash (hujjatlarni eksport/konvertatsiya qilish?).
§04

Texnik chellenjlar

Kod bilan tasdiqlangan (hocuspocus.ts, package.json).

  • CRDT asosidagi real vaqtli hamkorlik → Yjs + Hocuspocus: bir nechta foydalanuvchining tahrirlarini qo'lda operatsion transformatsiyalarsiz konfliktsiz birlashtirish. Oson bo'lmagan soha (CRDT) — kuchli muhandislik signali.
  • Collab serverini gorizontal masshtablash@hocuspocus/extension-redis: Yjs yangilanishlari Redis pub/sub orqali instansiyalar bo'ylab sinxronlanadi (yagona tugun emas). Taqsimlangan real-time'ni tushunish.
  • Yjs hujjatining persistentligiextension-database + Drizzle/Postgres: binar Yjs holatini documents jadvaliga load/store qilish.
  • Xona xavfsizligi → ulanishda JWT tekshiruvi (jose) — hujjatni faqat avtorizatsiyalangan foydalanuvchilar tahrirlashi mumkin.
  • Muharrirning domenga xos kengaytmasi → tibbiy shablonlar uchun maxsus TipTap tugunlari (ixtiyoriy atributli SVG/div); HTML↔Yjs uchun TiptapTransformer.
  • Webhook integratsiyasiextension-webhook hujjat o'zgarishlari haqida tashqi xizmatlarni xabardor qiladi (ehtimol healthcare-platform backend'i).
§05

AI yordamida ishlab chiqish

  • Topilgan sessiyalar: 0 (to'liq kalit bo'yicha mos kelish yo'q). Bu davr (2025-boshi) foydalanuvchining CC'ni faol ishlatishidan oldingi.
  • AI bilan nima qilingan: ma'lumot yo'q.
  • AI-workflow patternlari: yo'q.
§06

Yutuqlar va metrikalar

  • To'liq real vaqtli collab backend: CRDT + persistentlik + Redis masshtablash + JWT + navbatlar.
  • ~3 oy davomida yakka o'zi 83 kommit.
  • Tibbiy hujjatlar uchun maxsus muharrir sxemasi (SVG/div tugunlari).
  • Integratsiyalar: Postgres, Redis, webhooklar, Swagger API.
§07

Hissa qo'shganlar

git shortlog · barcha branchlar

  1. Dave9383
1 hissadorjami 83 ta kommit
Hozirda

Senior / Staff muhandis rollari va tanlab olingan frilansga ochiqman — prodakshn AI, platforma va full-stack ishlar.

Bog'lanish