允許在 OpenLibs.dev 目錄中安全使用線上服務和 Client-Side 程式庫的開源許可證政策
我們在流行的開源解決方案之上開發自己的互動式 Web 應用程式和使用者介面 (UI),而不修改程式庫本身的原始原始碼。我們嚴格監控所用組件的法律合規性,僅選擇安全的寬鬆(permissive)許可證。這為我們服務的使用者以及在商業專案中使用我們範例的開發人員確保了 100% 的法律安全。
面向用戶 應用
面向開發者 庫
開源許可證兼容性快速指南
| 許可證 | 准入狀態 | 商用許可 | 閉源自有代碼 (UI) |
|---|---|---|---|
| Unlicense | 允許 | 是 | |
| MIT | 允許 | 是 | 是 (需保留版權聲明) |
| Apache 2.0 | 允許 | 是 | 是 (需保留版權聲明) |
| BSD-2-Clause | 允許 | 是 | 是 (需保留版權聲明) |
| BSD-3-Clause | 允許 | 是 | 是 (需保留版權聲明) |
| ISC | 允許 | 是 | 是 (需保留版權聲明) |
| MPL 2.0 | 有條件 (安全) | 是 | 是 (若未修改模組本身代碼) |
| LGPLv3 | 有條件 (安全) | 是 | 是 (採用動態連接時) |
| GPLv3 | 禁止 | 存在風險 | 否 (要求公開整個網站的源碼) |
| AGPLv3 | 禁止 | 存在風險 | 否 (完全傳染型 Copyleft) |
| CC-BY-NC | 禁止 | 存在風險 | 不適用 (禁止商用) |
關於許可證的常見問題
是的,100% 安全。我們精心挑選工具,確保它們完全基於寬鬆型許可證(MIT、Apache 2.0、BSD-2-Clause、BSD-3-Clause、ISC、Unlicense)或弱傳染型 Copyleft 許可證(MPL 2.0、LGPLv3)。您可以自由地在您封閉的商業項目中使用這些交互式範例,沒有任何隱藏義務。
MPL 2.0 許可證僅在您直接修改函式庫本身的源文件时才要求開源該文件。由於我們是在函式庫 的基礎上開發自定義用戶界面和包裝層(Wrapper UI Layer),完全不觸碰其原始代碼,因此不會觸發 Copyleft 條件。您的專有代碼將保持完全封閉。
在傳統軟體中,LGPLv3 要求動態連結庫,以便用戶能夠自主更換其版本。在代碼由打包工具(Vite、Webpack 等)合併的用戶端 Web 領域中,這一界限在法律上較為模糊。然而在 OpenLibs.dev 上使用是完全安全的:我們不將它們集成到核心中,而是將其作為完全隔離的外部模組連接。由於函式庫的源碼未被修改,且您的網站僅通過外部 API 與其進行交互,因此 Copyleft 效果不會延伸到您自己的成果中——網站的商業代碼可以保持 100% 封閉。
Client-Side Only
寬鬆型許可證 (最大自由度)
MIT License
最理想JS 環境中最流行 的許可證。允許對代碼進行任何操作:修改、出售、閉源或嵌入到商業軟體中。
用戶端:開發人員只需在頁面的代碼中保留原始的作者署名聲明即可。
ISC License
npm 預設MIT 的法律等價物,但文本被縮短為一個段落。由 npm init 命令生成的法律基準許可證。
用戶端:對 Web 應用程式完全安全。除了保留版權聲明外,沒有任何限制。
Apache 2.0
專利保護允許商用和代碼閉源,但此外還能保護開發人員免受專利糾紛和專利流氓的侵害。
用戶端:如果直接在網站上修改了函式庫 的代碼,則必須指明哪些文件已被修改。
BSD (2/3-Clause)
安全允許自由使用、修改和銷售。3-Clause 版本明確禁止將函式庫 作者的名字用於網站的廣告宣傳。
用戶端:與任何商業前端項目完全兼容。
Unlicense / CC0 (公有領域)
公有領域在全世界範圍內完全且無條件地放棄任何版權。代碼轉為公共使用,不屬於任何人。
用戶端:我們網站的用户有權複製一個 JS 函式、擦除所有提及並將其作為自己的代碼呈現。完全沒有任何限制。
安全型 Copyleft (弱相互協議)
MPL 2.0 (Mozilla Public License)
文件級 Copyleft該許可證僅保護函式庫 本身,而不保護通過腳本調用它的 Web 應用程式代碼。非常適合隔離的 JS 模組。
用戶端:開發人員可以在其商業網站上自由使用此 JS 函式庫。但如果修改了函式庫 本身文件內 的代碼,則必須公開這些修改後的文件(例如在 GitHub 上創建 Fork)。網站的主代碼受到保護並保持封閉。
LGPLv3 (GNU Lesser General Public License)
動態連接許可證要求用戶能夠自主更換函式庫 的版本。在代碼被打包的 Web 環境中,這會產生法律細節,但在正確的架構下它仍然是安全的。
用戶端:如果在不與應用程式主代碼進行靜態合併(打包)的情況下,將其作為隔離的外部模組(例如通過 CDN)連接,或通過其 API 进行交互,則可以在商業網站上自由使用此函式庫。只要不修改原始函式庫 代碼,Copyleft 條件就不會激活,您的商業代碼將保持完全封閉。
許可證詳情 (雙重許可)
雙重許可 (例如 MIT / GPLv3)
選擇 MIT 時安全一些 JS 函式庫(如流行的 JSZip)會同時在兩個許可證下提供。這樣做足為了與大型 GPL 項目(如 WordPress)保持兼容。
用戶端:您擁有選擇 MIT 許可證的法律權利。您的 Web 應用程式代碼將保持私有和封閉,GPLv3 的限制不會影響到您。