Bun statically links JavaScriptCore (and WebKit) which is LGPL-2 licensed. WebCore files from WebKit are also licensed under LGPL2. Per LGPL2:
(1) If you statically link against an LGPL'd library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application.
You can find the patched version of WebKit used by Bun here: https://github.com/oven-sh/webkit. If you would like to relink Bun with changes:
git submodule update --init --recursive
make jsc
zig build
This compiles JavaScriptCore, compiles Bun's .cpp bindings for JavaScriptCore (which are the object files using JavaScriptCore) and outputs a new bun binary with your changes.
1---2name: bun-license3description: License for Bun4---56# License78> License for Bun910Bun itself is MIT-licensed.1112## JavaScriptCore1314Bun statically links JavaScriptCore (and WebKit) which is LGPL-2 licensed. WebCore files from WebKit are also licensed under LGPL2. Per LGPL2:1516> (1) If you statically link against an LGPL'd library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application.1718You can find the patched version of WebKit used by Bun here: [https://github.com/oven-sh/webkit](https://github.com/oven-sh/webkit). If you would like to relink Bun with changes:1920* `git submodule update --init --recursive`21* `make jsc`22* `zig build`2324This compiles JavaScriptCore, compiles Bun's `.cpp` bindings for JavaScriptCore (which are the object files using JavaScriptCore) and outputs a new `bun` binary with your changes.2526## Linked libraries2728Bun statically links these libraries:2930| Library | License |31| ------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------- |32| [`boringssl`](https://boringssl.googlesource.com/boringssl/) | [several licenses](https://boringssl.googlesource.com/boringssl/+/refs/heads/master/LICENSE) |33| [`brotli`](https://github.com/google/brotli) | MIT |34| [`libarchive`](https://github.com/libarchive/libarchive) | [several licenses](https://github.com/libarchive/libarchive/blob/master/COPYING) |35| [`lol-html`](https://github.com/cloudflare/lol-html/tree/master/c-api) | BSD 3-Clause |36| [`mimalloc`](https://github.com/microsoft/mimalloc) | MIT |37| [`picohttp`](https://github.com/h2o/picohttpparser) | dual-licensed under the Perl License or the MIT License |38| [`zstd`](https://github.com/facebook/zstd) | dual-licensed under the BSD License or GPLv2 license |39| [`simdutf`](https://github.com/simdutf/simdutf) | Apache 2.0 |40| [`tinycc`](https://github.com/tinycc/tinycc) | LGPL v2.1 |41| [`uSockets`](https://github.com/uNetworking/uSockets) | Apache 2.0 |42| [`zlib-cloudflare`](https://github.com/cloudflare/zlib) | zlib |43| [`c-ares`](https://github.com/c-ares/c-ares) | MIT licensed |44| [`libicu`](https://github.com/unicode-org/icu) 72 | [license here](https://github.com/unicode-org/icu/blob/main/icu4c/LICENSE) |45| [`libbase64`](https://github.com/aklomp/base64/blob/master/LICENSE) | BSD 2-Clause |46| [`libuv`](https://github.com/libuv/libuv) (on Windows) | MIT |47| [`libdeflate`](https://github.com/ebiggers/libdeflate) | MIT |48| A fork of [`uWebsockets`](https://github.com/jarred-sumner/uwebsockets) | Apache 2.0 licensed |49| Parts of [Tigerbeetle's IO code](https://github.com/tigerbeetle/tigerbeetle/blob/532c8b70b9142c17e07737ab6d3da68d7500cbca/src/io/windows.zig#L1) | Apache 2.0 licensed |5051## Polyfills5253For compatibility reasons, the following packages are embedded into Bun's binary and injected if imported.5455| Package | License |56| ------------------------------------------------------------------------ | ------- |57| [`assert`](https://npmjs.com/package/assert) | MIT |58| [`browserify-zlib`](https://npmjs.com/package/browserify-zlib) | MIT |59| [`buffer`](https://npmjs.com/package/buffer) | MIT |60| [`constants-browserify`](https://npmjs.com/package/constants-browserify) | MIT |61| [`crypto-browserify`](https://npmjs.com/package/crypto-browserify) | MIT |62| [`domain-browser`](https://npmjs.com/package/domain-browser) | MIT |63| [`events`](https://npmjs.com/package/events) | MIT |64| [`https-browserify`](https://npmjs.com/package/https-browserify) | MIT |65| [`os-browserify`](https://npmjs.com/package/os-browserify) | MIT |66| [`path-browserify`](https://npmjs.com/package/path-browserify) | MIT |67| [`process`](https://npmjs.com/package/process) | MIT |68| [`punycode`](https://npmjs.com/package/punycode) | MIT |69| [`querystring-es3`](https://npmjs.com/package/querystring-es3) | MIT |70| [`stream-browserify`](https://npmjs.com/package/stream-browserify) | MIT |71| [`stream-http`](https://npmjs.com/package/stream-http) | MIT |72| [`string_decoder`](https://npmjs.com/package/string_decoder) | MIT |73| [`timers-browserify`](https://npmjs.com/package/timers-browserify) | MIT |74| [`tty-browserify`](https://npmjs.com/package/tty-browserify) | MIT |75| [`url`](https://npmjs.com/package/url) | MIT |76| [`util`](https://npmjs.com/package/util) | MIT |77| [`vm-browserify`](https://npmjs.com/package/vm-browserify) | MIT |7879## Additional credits8081* Bun's JS transpiler, CSS lexer, and Node.js module resolver source code is a Zig port of [@evanw](https://github.com/evanw)’s [esbuild](https://github.com/evanw/esbuild) project.82* Credit to [@kipply](https://github.com/kipply) for the name "Bun"!
Run npx skillmds@latest add jarle/bun-license in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
License for Bun It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. Independent scanners report: SkillSpector: PASS, Skill Scanner: PASS. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
jarle (@jarle) published this skill. Their other Agent Skills are listed on their SkillMD profile.