Chuyển tới nội dung chính
webchotWeb siêu nhanh, chốt đơn lẹ
Thiết kế Web

source code 100% thuộc về khách: sở hữu fork dự án, không nhầm với sở hữu cả npm registry

source code 100% thuộc về khách — repo Git, IP, dependency license — làm rõ với Webchốt qua 0905 151 701 hoặc hi@webchot.com trước ký hợp đồng.

Tác giả: Nguyễn Văn Trường·Cập nhật: 21/04/2025·8 phút đọc
Source Code 100% Thuộc Về Khách: Bàn Giao & License

source code 100% thuộc về khách: sở hữu fork dự án, không nhầm với sở hữu cả npm registry

· Tác giả: Trường — Founder Webchốt

source code 100% thuộc về khách là cam kết điền vào hợp đồng để DN yên tâm không bị khóa trên vendor — nhưng cần phân tầng: phần bespoke viết cho bạn chuyển giao đầy đủ; phần OSS và SDK cloud vẫn thuộc tác giả gốc. Webchốt bàn giao repo, hướng dẫn chạy CI, và checklist rotate secret. Việc đọc phụ lục về boilerplate tái sử dụng giúp tránh tranh luận sau này. Trao đổi: dịch vụ, giá, liên hệ — 0905 151 701, hi@webchot.com.

Biểu đồ minh hoạ handoff source code 100% thuộc về khách, Webchốt

Quyền sở hữu rõ ràng — giảm sợ bị khóa deploy | Nguồn: webchot.com

Phân lớp IP trong một repo Next.js điển hình

Thư mục app router bespoke thường là tài sản chính; package internal scope studio có thể private registry — cần điều khoản “sau bàn giao chuyển public artifact vào repo khách”. source code 100% thuộc về khách không xoá nghĩa vụ tuân MIT của lodash; vẫn cần file THIRD_PARTY_NOTICES. Với ảnh stock mua license, ghi rõ seat và khu vực sử dụng.

Font commercial cần license transfer đúng brand owner.

Checklist bàn giao kỹ thuật sau sprint cuối

Tránh “hoc patch cuối tuần” không commit.

  • Điểm 1: Owner GitHub/GitLab về email khách.
  • Điểm 2: PAT cũ revoke, tạo deploy key mới.
  • Điểm 3: ENV prod copy vào vault khách.
  • Điểm 4: Tag semver release cuối.
Laptop làm việc — source code 100% thuộc về khách

Bảng: work-for-hire vs license độc quyền

Tên pháp lý tuỳ luật áp dụng — bảng mang tính định hướng.

Tiêu chíWork-for-hire gọnLicense độc quyềnKhuyên dùng
Quyền tái dùng studioThấpThương lượngNếu cần tái bán template
Chi phí lawyerThấpCao hơnDự án lớn nên invest
Thời gian kýNhanhChậmStartup ưu tiên tốc độ
Rủi ro tranh chấpThấp nếu rõThấp nếu rõLuôn ghi file đính kèm

Đây không phải tư vấn pháp lý — hãy tham vấn luật sư khi deal trị giá cao.

Quy trình 5 bước nhận repo sạch

  1. Bước 1: Clone về máy dev nội bộ khách.
  2. Bước 2: Chạy lint/test pipeline.
  3. Bước 3: Deploy staging bằng secret mới.
  4. Bước 4: So khớp SBOM với policy công ty.
  5. Bước 5: Ký biên bản nghiệm thu IP.

Nếu fail bước 2, quay lại dev — đừng ký tay.

Laptop code — bàn giao source

Đọc gói và phụ lục IP khi mua dịch vụ

Xem bảng giá; liên hệ để nhận phụ lục IP chuẩn. Template có thể có license riêng — hỏi trước.

Sai lầm phổ biến

Không đổi owner repo; lưu secret trong chat Zalo; fork nhưng không cập nhật license file.

  1. Sai lầm 1: Nghĩ “100% code” gồm cả data khách hàng trong DB — đó là dữ liệu, không phải IP code.
  2. Sai lầm 2: Dùng lại component có NDA của khách khác — vi phạm.
  3. Sai lầm 3: Không đọc AGPL dependency — bắt buộc disclose.
  4. Sai lầm 4: Quên trademark domain không chuyển.
Team họp — quyền source code khách hàng

Đọc kỹ license dependency và nghĩa vụ tái phân phối

source code 100% thuộc về khách không giải phóng bạn khỏi AGPL nếu bạn phân phối binary chứa component đó. Khi tích hợp SDK quảng cáo hoặc analytics, điều khoản thương mại của họ có thể cạnh tranh với cam kết IP — cần rà song song. Nếu dùng CI secret scan và phát hiện key lộ trong lịch sử Git, việc rotate key là ưu tiên zero — không tranh cãi thuộc warranty hay không.

Handoff kèm license list cho designer: font, stock photo, icon pack — tránh DN mua gói personal dùng cho thương mại. Với codebase lớn, có thể dùng SPDX headers — tốn công đầu nhưng audit M&A sau này nhanh hơn. Cuối cùng, ghi rõ quyền tái sử dụng đoạn code utilities—đôi khi studio giữ MIT package riêng để không bị kẹt tái phát triển.

Nếu khách tự deploy CI/CD fork, merge upstream định kỳ để nhận security patch — IP bàn giao không có nghĩa studio duy trì fork vô thời hạn. Với design asset Figma, export SVG icon phải optimize SVGO nhưng giữ license glyph. Legal nên review điều khoản không cạnh tranh nếu dev rời sang dự án tương tự ngành.

source code 100 thuộc về khách cần định nghĩa “deliverable” gồm repo, CI YAML, IaC, và secret template — không chỉ thư mục src. Nếu studio giữ package private registry, phải có plan transfer hoặc mirror trong 30 ngày. IP third-party: ffmpeg, font commercial, UI kit phải có entitlement list đính kèm ZIP handoff.

Git history: có thể squash trước bàn giao nhưng không xoá commit chứng minh license attribution. Khách fork nên bật branch protection và secret scanning trước khi invite contractor ngoài. Khi có module AI-generated snippet, ghi rõ guideline nội bộ studio — tránh grey area bản quyền downstream.

Điều khoản escrow source có thể dùng lawyer light cho startup — milestone thanh toán gắn tag release semver. Nếu khách không thanh toán đợt cuối, license fallback theo hợp đồng phải rõ (thường revoke production, giữ dev copy). Documentation API versioned cùng OpenAPI file — postman collection không đủ cho team 10 người.

Khi source đi kèm mobile app shell, license SDK (map, push, analytics) phải tách khỏi license web — tránh buyer tưởng gộp. Contract chỉnh sửa sau handoff: định nghĩa “nhỏ” vs “lớn” theo story point cap. Binary asset — font web, icon font — cần checksum SHA trong manifest để phát hiện file corrupt khi clone.

Nếu khách dùng self-hosted Git, backup bare repo sang object storage immutable. Pen-test trước go-live public repo fork có thể lộ secret cũ trong history — dùng trufflehog. Bàn giao nên có diagram C4 context để kỹ sư mới hiểu ranh giới hệ thống trong hai giờ đầu.

Legal escrow: nếu dùng luật sư bên thứ ba giữ milestone, đính kèm hash commit SHA đối chiếu từng đợt nhả tiền. Khách outsource penetration test sau handoff phải có NDA với lab; báo cáo raw chỉ share qua SFTP TTL ngắn. Monorepo vs polyrepo quyết định license scan — mỗi pattern có tool riêng, document lựa chọn lúc bàn giao để audit sau này không mất 40 giờ điều tra.

Handoff cuối nên kèm file NOTICES cho OSS theo chuẩn SPDX hoặc tương đương; luật sư khách dễ import vào Black Duck. Nếu có submodule git private, ghi rõ ai trả phí GitHub seat sau ngày bàn giao. Container image đi kèm phải list digest sha256 trong appendix — tránh “latest” không tái hiện được build. Cuối cùng, checklist xoá collaborator khỏi repo, npm org, và Vercel team — automation IaC giúp không sót account ghost.

FAQ — source code 100% thuộc về khách

Có được publish repo public không?

Tuỳ NDA và bí mật kinh doanh — hỏi pháp chế nội bộ.

AI codegen có vấn đề IP không?

Cần policy công ty về license output — ghi trong repo CONTRIBUTING.

Vẫn cần Webchốt deploy không?

Tách quyền code và vận hành — có thể mua retainer riêng.

Database schema có thuộc IP không?

Thường là phần derivative work — ghi trong hợp đồng.

Cần hỗ trợ handoff khẩn?

0905 151 701 — ưu tiên gói enterprise.

Liên Hệ Webchốt

source code 100% thuộc về khách là bàn đạp để bạn tự chủ đường ray sản phẩm — Webchốt làm đúng thủ tục Git và giấy tờ kèm theo. Gọi 0905 151 701, Zalo 0905151701, hi@webchot.com.

  • Hotline / Zalo: 0905 151 701 — gặp anh Trường (founder/dev).
  • Chat Zalo: zalo.me/0905151701 — phản hồi nhanh.
  • Email: hi@webchot.com — phản hồi <12h làm việc.
  • Studio: 262/1/93 Phan Anh, Phường Phú Thạnh, TP.HCM (T2–T7, 9h–18h).

Tham khảo thêm: 17 template Next.js · 10 dịch vụ web chuyên sâu · bảng giá Webchốt 2026 · 12 công cụ kế toán/tài chính miễn phí.


Reference: Next.js docs · web.dev Core Web Vitals.

Nhận thêm 1 bài mỗi tuần — tip Webchot, code clean, SEO

Bài viết thực chiến, không spam. Hủy bất kỳ lúc nào.

— Bài liên quan

Đọc thêm trong Thiết kế Web

— CẦN THIẾT KẾ WEB?

Webchốt làm web Next.js từ 8 triệu —
Demo 48h, bảo hành 12 tháng

LCP dưới 1s · Bundle 87KB · SEO kỹ thuật sẵn · Deploy Vercel

Demo