NEXA

Nền tảng làm việc nội bộ

Trò chuyện, thông báo và con người của công ty, ở cùng một chỗ.

NEXA gom chat theo thời gian thực, bảng tin công ty, danh bạ và phòng ban vào một không gian riêng cho từng tổ chức.

Không cần đăng ký. Bạn vào thẳng một công ty mẫu đang hoạt động.

Có gì bên trong

  • Trò chuyện theo thời gian thực

    Tin nhắn riêng, nhóm và kênh. Đang gõ, đã xem, gửi tệp, sửa trong 15 phút.

  • Bảng tin công ty

    Bài viết, thông báo chính thức, bình luận và cảm xúc.

  • Danh bạ và phòng ban

    Ai làm gì, thuộc phòng nào, đang online hay không.

  • Tìm mọi thứ

    Người, bài viết, kênh và tin nhắn, gõ có dấu hay không dấu đều được.

  • Quản trị có phân quyền

    Vai trò, lời mời, phòng ban và nhật ký kiểm toán.

  • Thông báo biết điều

    Một nghìn lượt thích vẫn chỉ là một thông báo. Đọc tin nhắn là thông báo tự tắt.

Dưới lớp vỏ

Những quyết định kỹ thuật đáng kể nhất. Mỗi cái đều được ghi lại thành ADR và có test canh giữ.

Xem mã nguồn
Mỗi tổ chức là một vùng kín
Mọi truy vấn lọc theo tổ chức, khoá ngoại tổng hợp ép ràng buộc xuống tận database, và test khẳng định dữ liệu không bao giờ lọt sang tổ chức khác.
Tin nhắn không mất, không trùng
Số thứ tự liên tục do máy chủ cấp, gửi lại không sinh bản sao, mất kết nối thì bắt kịp đúng chỗ đã dừng.
Phiên đăng nhập chống đánh cắp
Refresh token xoay vòng mỗi lần dùng; dùng lại một token cũ là thu hồi cả phiên. Token chỉ nằm trong cookie httpOnly.
Đăng nhập Google không mở cửa hậu
Không bao giờ tự gộp tài khoản theo email, vì email lúc đăng ký chưa được xác minh: chặn kiểu chiếm tài khoản từ trước.
Tìm kiếm tiếng Việt
Full-text search của PostgreSQL trên cột sinh sẵn: nội dung mới tìm được ngay, gõ không dấu vẫn ra.
Đẩy code là tự lên máy chủ
CI chạy toàn bộ test trên PostgreSQL thật, xanh mới deploy. Khoá deploy chỉ chạy được đúng một script, không mở được shell.

Công nghệ

  • TypeScript
  • Node.js
  • Express 5
  • PostgreSQL 18
  • Prisma 7
  • Redis
  • Socket.IO
  • MongoDB
  • Next.js 16
  • React 19
  • Tailwind CSS 4
  • Cloudflare R2
  • GitHub Actions