Phạm Văn Thư
Quản trị doanh nghiệp · AI-assisted content

HomeBox: sổ kiểm kê dụng cụ và phụ tùng cho nhà máy linh kiện điện tử Bắc Ninh

Đăng ngày 12/10/2026

Mục lục bài nghiên cứu
Hình đại diện HomeBox — phần mềm quản trị doanh nghiệp mã nguồn mở

HomeBox ngoài căn nhà: sổ kiểm kê nhẹ cho dụng cụ và phụ tùng trong xưởng

HomeBox là hệ thống kiểm kê và sắp xếp đồ đạc, được viết cho người dùng gia đình, nhấn mạnh sự đơn giản, chạy bằng Go với SQLite và giao diện web nhúng sẵn. [1] Kho sysadminsmedia/homebox là bản tiếp nối: đơn vị Sysadmins Media tiếp quản dự án từ phiên bản v0.11.0 vào tháng 6 năm 2024, còn mọi bản phát hành trước đó đến từ dự án gốc và không được duy trì ở đây. [3]

Câu hỏi của bài là liệu một công cụ làm cho nhà ở có thể phục vụ một nhà máy nhỏ hay không. Kết luận thận trọng: có thể dùng làm sổ đăng ký dụng cụ, đồ gá, phụ tùng thay thế và thiết bị đo ở quy mô một xưởng hay một phòng ban, nếu chấp nhận đây là sổ kiểm kê chứ không phải hệ thống bảo trì hay quản lý sản xuất. Các tài liệu đã đọc không nói gì về bảo trì phòng ngừa theo giờ máy, lệnh công việc hay truy xuất lô, nên bài không gán chúng cho sản phẩm.

Không nên chọn HomeBox nếu cần phần mềm cấp doanh nghiệp được kiểm toán và có cam kết hỗ trợ. Giấy phép của kho là AGPLv3, cần xem kỹ nếu định sửa hay phân phối lại. [2] Bài là nghiên cứu tài liệu, chưa cài đặt hay vận hành thử.

Dụng cụ biến mất, phụ tùng mua trùng, hạn bảo hành trôi qua

Trong một xưởng, những món nhỏ gây lãng phí lớn hơn người ta tưởng. Đầu đo, kìm chuyên dụng, đồ gá, cuộn ống nối hay thiết bị cầm tay được chuyển giữa các ca mà không ghi sổ. Khi cần dùng thì không biết nằm ở tủ nào; khi mua thêm thì không biết còn hàng. Hạn bảo hành và lịch kiểm tra thiết bị đo cũng thường nằm trong tin nhắn hoặc trên giấy dán.

HomeBox giải quyết lớp vấn đề này ở mức đơn giản. README liệt kê các tính năng chính: tổ chức đồ vật theo loại, vị trí và nhãn, thêm trường tùy chỉnh, tìm kiếm nhanh, tải ảnh, theo dõi tài liệu và bảo hành, theo dõi giá mua và lịch bảo trì, cùng giao diện chạy được trên máy tính, máy tính bảng và điện thoại. [1] Chúng khớp với việc ghi một món đồ ở đâu, mua khi nào, hết bảo hành lúc nào.

Điều cần tỉnh táo là mục tiêu thiết kế. README mô tả sản phẩm là hệ thống cho người dùng gia đình, tập trung vào sự đơn giản và dễ dùng. [1] Không có đoạn nào trong các tài liệu đã đọc nói rằng nó được thiết kế cho môi trường sản xuất công nghiệp, nên mọi áp dụng cho nhà máy là sự điều chỉnh do người triển khai chịu trách nhiệm.

Mô hình thực thể, hai loại cơ sở dữ liệu và lưu trữ tệp tách rời

Tài liệu hướng dẫn mục Items cho biết đồ vật và vị trí đều là thực thể, phân biệt bằng loại thực thể: đồ vật là thực thể có loại không phải vị trí và được đặt trong thực thể có loại vị trí. Nếu có nhiều loại đồ vật, người dùng chọn loại khi tạo, và loại có mẫu mặc định sẽ điền sẵn biểu mẫu. [7] Cách mô hình hóa này cho phép dựng cây vị trí từ nhà xưởng tới kệ và ngăn.

Về dữ liệu, bảng biến cấu hình liệt kê driver cơ sở dữ liệu mặc định là sqlite3 với đường dẫn tệp trong thư mục .data, kèm chế độ WAL, và lựa chọn thay bằng postgres cùng các tham số máy chủ và SSL. [5] Phần tệp đính kèm có thể lưu cục bộ hoặc trên kho tương thích S3; tài liệu lưu trữ nêu AWS S3 và chỉ ra MinIO, Cloudflare R2 và Backblaze B2 là các dịch vụ đã thử hoạt động. [6]

Tìm kiếm văn bản có hai chế độ: database, tìm thẳng trong SQLite hoặc PostgreSQL mà không cần dịch vụ phụ, hoặc meilisearch cho nhu cầu lớn hơn. [5] Cuối cùng, việc tạo ảnh thu nhỏ, nhãn in và tích hợp OpenTelemetry đều được bật tắt bằng biến cấu hình, nên ứng dụng gọn nhưng có thể mở rộng từng phần. [5]

Dashboard — HomeBox, phần mềm quản trị doanh nghiệp mã nguồn mở
Hình 1. Minh họa trong kho mã nguồn chính thức của HomeBox. Nguồn: sysadminsmedia/homebox @b31d6d4. Hình ảnh và nhãn hiệu thuộc về chủ sở hữu tương ứng.

Một món đồ đi qua hệ thống: nhập, gắn nhãn, tìm lại, nhắc hạn

Giả sử kỹ thuật viên nhập một đồ gá. Biểu mẫu tạo đồ vật yêu cầu chọn vị trí, loại thực thể và điền thông tin; chế độ nâng cao mở thêm chi tiết mua hàng, bảo hành, thông tin bán và trường tùy chỉnh. [7] Bản ghi vào cơ sở dữ liệu, còn ảnh và tài liệu đính kèm đi vào nơi lưu trữ đã cấu hình. [6]

Với lượng lớn, tài liệu khuyến nghị nhập CSV. Tệp có cột đặc biệt như HB.import_ref để chống trùng, HB.location hỗ trợ đường dẫn lồng nhau, HB.label cho nhãn và HB.field cho trường tùy chỉnh. Nếu import ref đã tồn tại thì bản ghi được cập nhật thay vì tạo mới. [8] Nhập và xuất không hỗ trợ tệp đính kèm, và không thể khai báo quan hệ cha con giữa đồ vật. [8]

Khi cần tìm lại, truy vấn đi qua chế độ tìm kiếm đã chọn. Với nhãn in, cấu hình cho phép đặt kích thước, phông chữ, lệnh in và cả một dịch vụ nhãn ngoài. [5] Đây là phần chưa được mô tả đủ trong các tài liệu đã đọc, nên bài không khẳng định định dạng mã hay khả năng quét; cần thử trước khi hứa với xưởng.

Danh mục năng lực có nguồn, và những thứ phải kiểm chứng thêm

Từ README: tổ chức theo loại, vị trí và nhãn, trường tùy chỉnh, tìm kiếm, tải ảnh, theo dõi tài liệu và bảo hành, theo dõi mua hàng và bảo trì, giao diện đáp ứng nhiều màn hình. README cũng nêu bản demo và bản nightly, cùng khả năng dịch qua Weblate. [1] Từ cấu hình: đăng nhập OIDC với giới hạn theo nhóm, tạo ảnh thu nhỏ cho PNG, JPEG, AVIF, WEBP và GIF, tra cứu mã vạch qua dịch vụ ngoài khi có token, và bộ lọc mạng cho thông báo. [5]

Có hai chi tiết cho thấy dự án chú ý vận hành. Khoá API cần một chuỗi pepper ít nhất 32 byte, nếu không tiến trình từ chối khởi động; đổi pepper sẽ vô hiệu mọi khóa API đã cấp. [5] Giới hạn đăng nhập sai áp dụng theo địa chỉ IP, mặc định 5 lần thất bại trong một phút trước khi bị khóa tạm. [9]

Những điểm cần xác minh bằng thử nghiệm: chất lượng nhãn và quét thực tế, hành vi lịch bảo trì và thông báo, hiệu năng với nhiều chục nghìn bản ghi, và cách xử lý thiết bị cần hiệu chuẩn định kỳ. Các tài liệu đã đọc chưa đủ để kết luận về những điều đó, nên bài xếp chúng vào phần thử nghiệm chứ không coi là tính năng đã xác minh.

Ai có lợi, và ai nên tìm hệ thống khác

Nhóm phù hợp là người cần sổ kiểm kê gọn, tự lưu trữ: gia đình, câu lạc bộ, phòng thí nghiệm nhỏ, văn phòng, studio hay một xưởng cần đăng ký tài sản nhỏ lẻ. Cái hấp dẫn là mức độ cài đặt thấp: README tuyên bố không cần cấu hình phức tạp, và chỉ cần một container với một thư mục dữ liệu. [1] Cả hai điều đều là mô tả của chính dự án.

Nhóm thứ hai là những người đã vận hành container và thích công cụ nhẹ cho nội bộ, vì HomeBox có hỗ trợ OIDC để dùng chung danh tính của tổ chức. [5] Tuy vậy, các nhóm ở nhà máy muốn gắn thiết bị với mã tài sản kế toán, lịch bảo dưỡng máy theo giờ chạy, hay theo dõi hiệu chuẩn có yêu cầu kiểm toán nên đánh giá hệ thống quản lý bảo trì chuyên dụng.

Ngoài ra, dự án mô tả đối tượng là người dùng gia đình, nên trong tổ chức lớn có phân quyền phức tạp theo phòng ban, các tài liệu đã đọc không chứng minh được khả năng đáp ứng. [1] Hãy coi đây là điểm cần thử, chứ không phải điều đã được kết luận.

Tình huống giả định: kho dụng cụ và phụ tùng ở một nhà máy linh kiện điện tử tại Bắc Ninh

Hãy hình dung một nhà máy sản xuất linh kiện điện tử quy mô vừa ở Bắc Ninh, có một phòng kỹ thuật giữ đồ gá, đầu đo, bộ phận thay thế và dụng cụ cầm tay phục vụ vài dây chuyền. Đây là tình huống giả định, không phải trường hợp đã triển khai. Hiện tại danh sách nằm trong bảng tính; thất lạc và mua trùng xảy ra mỗi khi đổi ca hay đổi người giữ kho.

Đề xuất là dùng HomeBox cho đúng một việc: đăng ký các món nhỏ và có thể di chuyển. Cây vị trí gồm xưởng, dây chuyền, tủ dụng cụ và ngăn; mỗi món được gắn loại thực thể, ảnh, số serial và trường tùy chỉnh như mã đồ gá hay ngày hiệu chuẩn gần nhất. [1][7] Dữ liệu ban đầu được nhập từ bảng tính bằng CSV có import ref nhằm tránh trùng khi nhập lại. [8]

Các giới hạn phải nói rõ. HomeBox không tích hợp sẵn với hệ thống ERP hay hệ thống thực thi sản xuất của nhà máy trong các tài liệu đã đọc. Nó không thay thế quy trình hiệu chuẩn có chứng nhận, và nhà máy phải xác định ai được xem thông tin giá mua hay nhà cung cấp. Vì dự án hướng tới người dùng gia đình, bước thử nghiệm đầu tiên nên là một kho nhỏ, với trách nhiệm rõ cho người cập nhật mỗi ca.

Chạy bằng Docker: pepper, thư mục dữ liệu, chế độ production và sao lưu

README đưa ví dụ khởi động bằng một lệnh docker run: sinh pepper bằng openssl và lưu vào tệp, tạo thư mục dữ liệu, đặt quyền cho người dùng 65532 nếu dùng ảnh rootless hoặc hardened, ánh xạ cổng 7745 ra cổng ngoài và gắn thư mục dữ liệu vào /data. [1] Tài liệu cấu hình cho biết biến HBOX_MODE mặc định là development và có thể đặt production. [5] Trong thực tế, khuyến nghị đặt rõ chế độ production và rà lại các mặc định trước khi mở ra mạng nhà máy.

Với dữ liệu, lựa chọn mặc định là tệp SQLite trong thư mục dữ liệu. Nếu dùng Postgres, cần cấp tham số kết nối và chế độ SSL; mặc định ssl mode là require. [5] Tài liệu lưu trữ cảnh báo đường dẫn cục bộ phải ghi được bởi người dùng chạy ứng dụng. [6] Sao lưu gồm cả cơ sở dữ liệu lẫn thư mục tệp đính kèm, hoặc bucket S3 nếu dùng.

Về giám sát, ứng dụng hỗ trợ log dạng JSON hoặc văn bản và tích hợp OpenTelemetry nếu bật. [5] Phần tài liệu về proxy và OIDC trong cây tài liệu chưa được đọc cho bài này, nên khi đặt sau reverse proxy cần đọc riêng các trang đó và đặt đúng biến về tin cậy proxy. [5]

Bảo mật: bề mặt tấn công nhỏ, nhưng mặc định cần rà lại

Dự án có chính sách bảo mật chi tiết. Chỉ bản phát hành mới nhất và nhánh main được hỗ trợ, báo cáo cho bản trước v0.11.0 bị đóng mà không xét, và lỗi nhỏ có thể báo công khai còn lỗi nghiêm trọng báo qua advisory riêng tư. Chính sách cũng yêu cầu người báo tự tái hiện lỗi chứ không gửi kết quả công cụ tự động chưa kiểm chứng. [3] Trang tài liệu bảo mật phản chiếu tệp trong kho và nói tệp kho là bản có thẩm quyền khi hai nơi khác nhau. [4]

Về cấu hình, đăng nhập sai bị giới hạn theo IP với mức khóa tăng dần tới 5 phút, và đăng ký tài khoản có hạn mức cố định 5 yêu cầu mỗi phút cho mỗi IP, có tính cả lần thành công. [9] Cho phép đăng ký tự do mặc định là true, nên một triển khai nội bộ nên tắt tùy chọn này sau khi tạo các tài khoản cần thiết. [5] Tùy chọn analytics mặc định là false, còn kiểm tra bản phát hành trên GitHub mặc định là true. [5]

Bộ lọc mạng cho thông báo mặc định chặn các địa chỉ metadata đám mây và dải bogon, nhằm giảm nguy cơ gọi tới địa chỉ không mong muốn. [5] Ảnh sản phẩm và thông tin giá mua có thể nhạy cảm với nhà máy, nên cần phân quyền ở tầng mạng hoặc OIDC và sao lưu mã hóa. Bài chưa kiểm tra mã nguồn hay quét lỗ hổng.

Giấy phép AGPLv3 và ranh giới của nó

Tệp LICENSE tại commit được ghim là văn bản GNU Affero General Public License. [2] README chỉ hiển thị huy hiệu giấy phép và không có đoạn văn nào tự nêu điều khoản, nên bài dựa vào nội dung tệp LICENSE để kết luận. [1][2] Giấy phép AGPL được thiết kế riêng cho phần mềm chạy trên máy chủ mạng, nơi người dùng tương tác từ xa, nên nghĩa vụ chia sẻ mã nguồn của bản sửa đổi có thể phát sinh khi bạn cung cấp bản sửa cho người khác qua mạng. [2]

Nếu nhà máy chỉ chạy nguyên bản cho nhân viên của mình, phần lớn không thay đổi gì ở nghĩa vụ phân phối, nhưng đây là diễn giải thận trọng, cần luật sư xác nhận theo trường hợp. Nếu nhà máy sửa mã để tích hợp vào hệ thống nội bộ và cho đối tác ngoài truy cập, cần phân tích kỹ hơn.

Giấy phép chỉ bao phủ mã tại commit này. Nó không bao phủ dịch vụ tra cứu mã vạch bên thứ ba, nhà cung cấp lưu trữ S3, dữ liệu của bạn, tài nguyên dịch từ Weblate hay phụ thuộc có giấy phép riêng. [1][5][6] Các tài liệu đã đọc không có CLA hay điều khoản nhãn hiệu riêng. Việc dự án là bản tiếp nối của dự án gốc cũng nên được ghi lại trong hồ sơ tuân thủ. [3]

Chi phí: phần mềm gọn, công vận hành và công nhập dữ liệu là chính

README tuyên bố việc dùng bộ nhớ khi nhàn rỗi của toàn bộ container thường dưới 50MB. Đó là mô tả của dự án, bài chưa đo và cũng không dựa vào nó để định cỡ phần cứng. [1] Nguồn lực hạ tầng cần có thuộc loại rất nhỏ: một máy ảo hoặc máy chủ nhỏ chạy container, ổ đĩa cho dữ liệu và ảnh, và cơ chế sao lưu.

Chi phí lớn hơn thường là nhân công. Cần một người dựng và nâng cấp, một người thiết kế cây vị trí, loại thực thể và quy ước đặt tên, và nhân viên kho nhập dữ liệu ban đầu. CSV rút ngắn bước nhập, nhưng tệp đính kèm phải tải lên sau. [8] Nếu dùng S3 hoặc Meilisearch, thêm chi phí dịch vụ và vận hành. [5][6]

Bài không đưa giá vì nguồn không có. Khi lập ngân sách, nên đo bằng giờ công: giờ dựng, giờ nhập dữ liệu, giờ đào tạo và giờ kiểm kê định kỳ, chứ không đo bằng giá máy chủ. Dự án có chương trình đóng góp tài chính để duy trì demo và dự án, nhưng README không đề cập bản thương mại có hỗ trợ. [1]

Đặt HomeBox cạnh các hướng khác nhau

Hướng đơn giản nhất là bảng tính dùng chung. Rẻ và quen thuộc, nhưng khó gắn ảnh, tài liệu bảo hành, vị trí lồng nhau và lịch sử thay đổi, và dễ bị sửa đè. HomeBox thêm cấu trúc, đổi lại phải vận hành một dịch vụ. [1][7]

Hướng thứ hai là phần mềm quản lý tài sản hoặc bảo trì chuyên dụng, kể cả những sản phẩm mã nguồn mở khác. Nhóm này thường mạnh hơn về lệnh công việc, tuân thủ và báo cáo, nhưng nặng hơn khi triển khai. Bài không nêu tên sản phẩm cụ thể vì không đọc tài liệu của chúng. Hướng thứ ba là mô-đun kho trong ERP, phù hợp khi cần liên kết với kế toán và mua hàng, nhưng chi phí và thời gian triển khai thường lớn.

Tiêu chí chọn nên dựa trên nhu cầu: nếu chỉ cần biết món gì ở đâu và còn bảo hành không, HomeBox có thể đủ. Nếu cần bảo trì theo lịch, phê duyệt và truy vết cấp lô, hãy chọn công cụ khác. [1] Bài không so sánh hiệu năng.

Những giới hạn đã biết và những chỗ chưa biết

Giới hạn đầu tiên là định hướng sản phẩm: dự án hướng tới người dùng gia đình, nên không có bằng chứng trong tài liệu đã đọc về tính năng chuyên cho công nghiệp. [1] Giới hạn thứ hai nằm ở CSV: không hỗ trợ tệp đính kèm, xuất không giữ đường dẫn vị trí lồng nhau, và không khai báo được quan hệ giữa các đồ vật. [8]

Thứ ba là hạn chế về bảo mật tổ chức: chính sách chỉ hỗ trợ bản mới nhất và main, nên người dùng phải nâng cấp thường xuyên; không có bản bảo mật dài hạn trong nguồn đã đọc. [3] Thứ tư, một vài mặc định ở chế độ phát triển có thể không phù hợp môi trường thật nếu bạn không đặt production. [5]

Chưa biết: khả năng chịu tải với kho lớn, chất lượng nhãn in thực tế, chi tiết phân quyền nhiều nhóm, và khả năng tích hợp với ERP. Không nên dùng HomeBox làm nguồn chân lý duy nhất cho thiết bị cần hiệu chuẩn có chứng nhận hoặc có yêu cầu kiểm toán chất lượng, cho đến khi một đợt thử chứng minh nó đáp ứng.

Kế hoạch thử nghiệm năm tuần với một kho dụng cụ

Tuần một: dựng một bản trên máy thử theo ví dụ README, đặt production, tắt đăng ký mở sau khi tạo tài khoản và ghi lại phiên bản. Tiêu chí qua cổng: tạo được cây vị trí, thêm đồ vật có ảnh, sao lưu và khôi phục dữ liệu sang máy khác thành công. [1][5]

Tuần hai và ba: chọn một tủ dụng cụ hoặc một dây chuyền, nhập khoảng vài trăm món bằng CSV có import ref, tải ảnh bằng tay, thử in nhãn với một máy in có sẵn. [8] Đo bằng số liệu do nhà máy tự ghi: thời gian trung bình để tìm một món đồ so với cách cũ, số món sai vị trí trong lần kiểm kê đối chiếu, và tỷ lệ bản ghi đủ ảnh cùng ngày bảo hành. Ngưỡng do nhà máy đặt từ đầu.

Tuần bốn và năm: thử OIDC với danh tính nội bộ, kiểm tra giới hạn đăng nhập, rà các tùy chọn thông báo và đánh giá nhu cầu tích hợp. [5][9] Tiêu chí dừng: nếu việc cập nhật vị trí không được duy trì hơn hai tuần liên tiếp, nếu nhãn không dùng được thực tế, hoặc nếu nhà máy bắt buộc có lịch bảo trì tự động, dừng và chuyển sang hệ thống chuyên dụng.

Kết luận

HomeBox là sổ kiểm kê mã nguồn mở gọn, tự lưu trữ, có mô hình thực thể linh hoạt, nhập CSV, lưu trữ S3 và nhiều tùy chọn bảo vệ đăng nhập. [1][5][6][8][9] Giá trị cho nhà máy nằm ở việc làm cho những món nhỏ bớt mất dấu, không phải thay thế hệ thống bảo trì hay ERP.

Điều cần lưu ý gồm: định hướng người dùng gia đình, AGPLv3, việc dự án là bản tiếp nối từ v0.11.0, và chỉ bản mới nhất được hỗ trợ bảo mật. [1][2][3] Với một cá nhân hay nhóm quản lý hệ thống tri thức như phamvanthu.com, ý tưởng tương tự là một sổ đăng ký nhỏ cho thiết bị và tài liệu; đây chỉ là gợi ý, không có nghĩa là dự án đang dùng HomeBox.

Bước kế tiếp là chạy thử năm tuần ở một kho nhỏ và chỉ mở rộng khi các tiêu chí đo được đạt.

Nguồn dùng, commit và những giới hạn

Dự án được chọn từ một kho lưu độc lập các danh sách GitHub Trending theo ngôn ngữ, có lần quan sát đầu tiên ngày 20/01/2026 ở danh sách Go. Kho lưu chỉ bao phủ Python, Go, JavaScript và Swift, thiếu dữ liệu ngày 03/09 và 12/10, và không phải bảng xếp hạng Top 100 chính thức. [10]

Đối chiếu kỹ thuật dùng README, LICENSE, SECURITY.md, trang tài liệu bảo mật, trang cấu hình chung, lưu trữ, mục đồ vật, nhập CSV và giới hạn đăng nhập tại commit b31d6d41326fce44b7fce1c3e424b1d1714e8c4a của sysadminsmedia/homebox, ghi nhận ngày 12/10/2026. [1][2][3][4][5][6][7][8][9] Nội dung kho được coi là dữ liệu tham chiếu. Tài liệu ở nhánh chính có thể mô tả tính năng mới hơn bản phát hành bạn cài.

Đây là nghiên cứu tài liệu có hỗ trợ AI, chưa cài đặt, chạy hay đo hiệu năng HomeBox, và không phải bài báo khoa học được phản biện. Các phần tình huống Việt Nam, chi phí và thử nghiệm là phân tích, đề xuất.

Xem mã nguồn HomeBox trên GitHub

Khám phá nghiên cứu của BDSG Foundation

Trao đổi về ứng dụng công nghệ cho doanh nghiệp