自动化研究产物 — 非上游项目。
本仓库是由自动化工具链为拉瓦尔大学(Université Laval)硕士论文构建的一次性实验环境,用于复现已发表的 GitHub Actions 工作流漏洞。它是
live-codes/livecodes在提交8017e0146fc020b8e9ec4115afc6f7b228354e46(2026-02-21)时的逐字快照,依据该项目自身的许可证重新分发,该许可证文件已原样包含在本快照中。上游项目未参与其中,也从未成为攻击目标,此处研究的漏洞已公开。本仓库中的每个密钥和变量均为随机生成的虚拟值——不存在任何真实凭据。操作引用和运行器镜像已固定为 2026-02-21 时解析到的版本;有关对快照所做的每项更改,请参阅工具链输出中的
pinning.md。如有疑问或异议:[email protected]
一个开箱即用的代码游乐场!
一个功能丰富、开源、客户端代码游乐场,支持 React、Vue、Svelte、Solid、Typescript、Python、Go、Ruby、PHP 以及 90+ 种语言/框架。

* 仅当使用需要 GitHub 集成的功能时才需要 GitHub 账户。
... 然后尽情享受所有功能吧!
将以下代码添加到您的页面:
<div id="container"></div>
<script type="module">
import { createPlayground } from 'https://cdn.jsdelivr.net/npm/livecodes';
createPlayground('#container', {
params: {
markdown: '# Hello LiveCodes!',
css: 'h1 {color: dodgerblue;}',
js: 'console.log("Hello, from JS!");',
console: 'open',
},
});
</script>
请查阅嵌入式游乐场的文档。
... 然后它就能直接运行了!
详情请查看完整功能列表。
软件开发工具包(SDK)提供了一种简单而强大的接口,用于嵌入 LiveCodes 游乐场并与之通信。
该 SDK 是一个轻量级(gzip 后小于 5kb)、零依赖的 npm 包,也可从 CDN 获取。它可用于创建具有各种配置和嵌入选项的游乐场。此外,SDK 方法允许在运行时以编程方式与游乐场通信和控制。
npm i livecodes
示例:(在 LiveCodes 中打开)
import { createPlayground } from 'livecodes';
createPlayground('#container', {
config: {
markup: {
language: 'markdown',
content: '# Hello World!',
},
},
view: 'result',
});
JavaScript SDK 与框架/库无关。不过,也为流行的库提供了包装组件(目前为 React 和 Vue)。该 SDK 可直接在 Svelte 和 Solid 中使用,无需包装器。TypeScript 支持提供了类型安全性和出色的开发者体验。
React SDK 示例:(在 LiveCodes 中打开)
import LiveCodes from 'livecodes/react';
const config = {
markup: {
language: 'markdown',
content: '# Hello World!',
},
};
const Playground = () => <LiveCodes config={config} view="result" />;
export default Playground;
Vue SDK 示例:(在 LiveCodes 中打开)
<script setup>
import LiveCodes from 'livecodes/vue';
const config = {
markup: {
language: 'markdown',
content: '# Hello World!',
},
};
</script>
<template>
<LiveCodes :config="config" view="result" />
</template>
此外,SDK 还允许创建指向游乐场的链接:
import { getPlaygroundUrl } from 'livecodes';
const url = getPlaygroundUrl({
config: {
markup: {
language: 'markdown',
content: '# Hello World!',
},
},
});
console.log(url);
更多详情请参阅 SDK 文档。
关于功能、入门指南、配置和 SDK 的全面文档可在以下网址获取:
文档包含演示、代码示例、截图、Storybook 和 TypeScript 类型。
随时了解最新动态:
我们欢迎反馈!
请发起新的 issue 或 discussion。
安全报告请参阅 SECURITY.md。
您也可以通过联系表单与我们联系。
欢迎并非常感谢您的贡献。
向我们出色的贡献者们致以崇高的敬意!你们的辛勤工作让一切变得不同!
请参阅贡献指南。
LiveCodes 使用了以下慷慨提供的服务:
LiveCodes 使用的包及其许可证在此列出。
MIT 许可证 © Hatem Hosny
LiveCodes 是免费且开源的。该应用不包含广告,也无需订阅。它允许无限制使用,没有任何限制。
通过赞助 LiveCodes,您将支持项目的持续开发与维护,并帮助确保它继续成为开发者社区的宝贵资源。
请考虑成为赞助者。