Cách dùng Trình tạo LICENSE
- Chọn giấy phép — phần tóm tắt cho biết giấy phép đó cho phép gì và yêu cầu gì ở người dùng mã của bạn.
- Nhập chủ sở hữu bản quyền (bạn hoặc công ty), năm và tên dự án.
- Sao chép hoặc tải file LICENSE về, rồi đặt vào thư mục gốc của repository.
- Thêm mã SPDX vào
package.json, badge trong README và — với Apache, GPL và MPL — đoạn thông báo ngắn ở đầu file mã nguồn.
Nên chọn giấy phép nào?
| Giấy phép | Tóm tắt | Có bắt buộc chia sẻ thay đổi? |
|---|---|---|
| MIT | Làm gì cũng được, chỉ cần giữ thông báo bản quyền. Lựa chọn phổ biến nhất. | Không |
| Apache 2.0 | Giống MIT, thêm quyền sáng chế rõ ràng và yêu cầu ghi chú các thay đổi. | Không |
| BSD 2 / 3-Clause, ISC | Giấy phép ngắn, cho phép rộng rãi; BSD-3 còn cấm dùng tên bạn để quảng bá sản phẩm phái sinh. | Không |
| MPL 2.0 | Các file đã sửa phải tiếp tục mở mã; có thể kết hợp với mã đóng. | Chỉ các file đã sửa |
| LGPL 3.0 | Thay đổi trên thư viện phải mở mã; ứng dụng chỉ liên kết với thư viện thì có thể đóng mã. | Thư viện |
| GPL 3.0 | Mọi thứ bạn phân phối có chứa mã này cũng phải theo GPL. | Có |
| AGPL 3.0 | Giống GPL, và cũng áp dụng khi người dùng sử dụng qua mạng (SaaS). | Có, kể cả với SaaS |
| Unlicense | Thuộc phạm vi công cộng — không có bất kỳ điều kiện nào. | Không |
Các giấy phép ngắn được đưa vào đầy đủ. Toàn văn của Apache 2.0, nhóm GPL và MPL 2.0 khá dài, nên trình tạo sẽ lấy văn bản chính thức từ apache.org, gnu.org hoặc mozilla.org khi bạn chọn một loại. Trang này giải thích về giấy phép nhưng không phải tư vấn pháp lý — với mã của công ty, hãy hỏi ý kiến bộ phận pháp chế. Xem thêm: Trình tạo README, Trình tạo package.json, Trình tạo .gitignore.
Cũng được tìm dưới tên: tạo file license, license mit, tạo license mã nguồn mở, trình tạo license mit, license apache 2.0, license gpl 3.0, chọn license cho dự án, spdx license.
Các công cụ dùng kèm tốt với Trình tạo LICENSE
- Trình tạo Changelog — Dán git log của bạn và nhận ngay một phần CHANGELOG.md gọn gàng: các commit được nhóm thành Tính năng, Sửa lỗi, Hiệu năng và Breaking Changes, phạm vi (scope) được in đậm, kèm liên kết đến commit, cùng phiên bản semantic tiếp theo.
- Tạo Conventional Commit — Viết commit message theo chuẩn Conventional Commits mà không cần nhớ cú pháp.
- Trình tạo .editorconfig — Giúp mọi trình soạn thảo trong nhóm dùng chung thụt lề, kiểu xuống dòng và charset.
- Định dạng HTML — Dán mã HTML đã nén hoặc lộn xộn và nhận lại HTML được thụt lề rõ ràng, nhất quán — bao gồm cả các khối <style> và <script> nhúng bên trong.