← Semua karya

2020 · Full-stack Developer

Dygoo

Eksperimen chat realtime — frontend statis Nuxt yang dipasangkan dengan server Express/Socket.IO terpisah untuk pesan dan presence berbasis ruang.

Stack
Nuxt · Vue · Node.js · Express · Socket.IO
Kategori
Realtime · Eksperimen
Kunjungi proyek

Yang terkirim

  • Frontend Nuxt 2 statis (SSR nonaktif) dengan status nama pengguna dan ruang di cookie yang menggerakkan antarmuka chat.
  • Server Express/Socket.IO pendamping yang menangani gabung ruang, presence pengguna, siklus gabung/keluar, dan broadcast pesan.
  • Diterapkan sebagai demo live di Netlify.
Dygoo

Dygoo adalah eksperimen chat realtime yang sengaja dibangun sebagai dua bagian terpisah: frontend Vue statis dan server Node.js mandiri. Ia menjadi tempat bermain untuk bagian web engineering yang tidak hidup dalam siklus permintaan-respons.

Fungsinya

Frontend adalah aplikasi Nuxt 2 yang dibangun untuk output statis dengan SSR nonaktif — UI chat menyimpan nama pengguna dan ruang di cookie, dengan komponen chat dan ruang terstruktur sebagai komponen Vue. Server pendamping (Express + Socket.IO) melacak ruang dan penggunanya, menyiarkan pesan, serta menangani siklus gabung dan keluar, menjaga pengguna dalam registri in-memory untuk presence.

Catatan engineering

  • Frontend dan server dipisah oleh kontrak. Klien statis; server adalah deployment terpisah. Ruang dan broadcast melewati batas tersebut lewat WebSocket.
  • Presence adalah state realtime. Gabung, keluar, dan putus koneksi ditangani eksplisit oleh server, bukan diasumsikan.
  • State klien berbasis cookie. UI menyimpan cukup state di sisi klien agar tetap ramah-static.

Tempat dalam perjalanan

Eksperimen 2020 yang terhubung dengan minat pada sistem web interaktif — cara berpikir event-driven yang berada di bawah pekerjaan produksi backend asinkron dan berbasis pesan.