Skip to content

Latest commit

 

History

History
363 lines (240 loc) · 21.3 KB

File metadata and controls

363 lines (240 loc) · 21.3 KB
实验编程LOGO

code2art museum 实验编程博物馆

code2art museum 是一个由社群共同建造、永不竣工的在线数字博物馆——它收藏与展示实验编程社群的历史、作品、开源项目与人。

The code2art museum is a community-built, never-ending online digital museum that collects and showcases the history, works, open-source projects, and people of the code2art community.


项目链接与会议入口

原型一(Agent): https://code-2-art.github.io/code2art_museum/
image

原型二(三维漫游): https://code-2-art.github.io/code2art_museum/space/index.html
image

原型三(全景):https://code-2-art.github.io/code2art_museum/space/v2/index.html
image


如何参与

code2art museum 会用 AI 原生的方式被建造和维护。AI 不只是辅助工具,而是参与整理、生成、构建、校验和优化的协作者。

项目鼓励 AI 开发与协作,包括系统方法(Prompt/Context/Harness/Loop Engineering)、Vibe coding、AI 生成视觉、AI 辅助策展和 AI 审校等实践。

你可以通过 Pull Request、Issue 或社群讨论参与。每一种贡献都可以成为博物馆的一部分:

  • Prompt / Skill:可复用提示词、AI 工作流、创作方法。
  • 代码:页面、组件、数据校验、部署、可访问性优化。
  • UI 设计:界面稿、视觉系统、动效、信息架构。
  • 作品资料:展品图片、视频、网页、代码仓库、创作说明。
  • 成员 Profile:头像、身份、工具栈、代表作品、社群关系。
  • 研究案例:课程、展览、开源项目、互动媒体案例。
  • 展品文案:标题、简介、过程、工具、许可与贡献说明。
  • 测试反馈:移动端体验、性能、错别字、链接、内容准确性。
  • 更多

详细参与方式见 CONTRIBUTING.md。

本地主站开发

主站使用 Astro 5、TypeScript 和 Tailwind 4,生产输出位于 docs/。

npm install
npm run dev
npm run build
npm run check

npm run check 会执行 TypeScript 检查、馆藏 schema 与 Museum Agent 单元测试、生产构建,以及生成站点的内部链接/资源校验。

投稿、附件与审核使用 Supabase。复制 .env.example 的公开变量名到未跟踪的 .env,并按 supabase/README.md 应用数据库迁移。浏览器端只使用 Supabase publishable key,服务端密钥不得写入仓库或前端环境变量。未配置 Supabase 时,公开档案和 Museum Agent 仍可使用,投稿页只提供本地草稿。

正式环境配置、GitHub Pages Actions 发布、Auth 回调、策展权限与回滚步骤见 DEPLOYMENT.md。


加入实验编程社群 入口见公众号菜单

公众号/wechat: code2art

公众号

立项书

0. 一句话定位

code2art museum 是一个由社群共同建造、永不竣工的在线数字博物馆——它收藏社群的历史、作品、开源项目与人,并用区块链为每一份开源贡献发放可验证的"实验编程认证"。

它的特别之处在于三点:

  1. 它是被它要展示的方式建造出来的。 用 AI 协作、开源提交、Vibe coding 与手写代码混合的方式建馆,而这套建造过程会被原样陈列在馆内。
  2. 它既快又沉浸。 默认是适配手机时代的轻量博物馆,可一键进入沉浸式"深空"模式。
  3. 贡献即藏品,贡献者即馆藏。 无论你是写代码的工程师、做视觉的设计师,还是搞创作的艺术家——提交代码 / Prompt / skill / 内容 / 视觉设计 / 艺术作品,都会被同等认证、上链,并把名字永久刻进贡献者展区。

1. 项目背景与意义

AI 正在重塑"创作"和"编程"的边界。一个新的创作者群体正在出现:工程师、设计师与艺术家的身份边界正在融合——他们用自然语言指挥模型、用 Prompt 当代码写、把 skill 当作可复用的能力封装、用生成式工具产出图像与交互艺术、让手写与生成的代码共存。这种新的创作形态目前没有一个像样的、属于自己的展示与存档空间。

实验编程社群本身就是这种新形态的代表。code2art museum 的意义在于:

  • 存档(Archive):把社群从 0 到现在的发展历史、关键节点、作品与项目沉淀下来,避免散落在各处聊天记录和临时链接里被时间冲走。
  • 展示(Exhibit):给社群艺术家、开源项目、个人 Profile 一个有审美、有秩序、可被发现的舞台。
  • 激励(Incentive):用"认证 + 上链 + 永久署名"把开源贡献变成可携带、可验证、有荣誉感的资产。
  • 示范(Demonstrate):让整座博物馆成为"AI 时代如何开源协作创作"的活样本——它怎么建的,本身就值得被研究和模仿。

2. 项目愿景与原则

2.1 愿景

让每一个用 AI 进行创作、设计与编程的人,都能在这里找到自己的位置、留下自己的痕迹、并被世界(包括人类与 AI)看见。

code2art museum 愿景

2.2 共建原则(项目"宪法"级别的约定)

原则 含义
开源优先 全部代码、内容、设计资产以开源协议公开,欢迎 fork、复用、二次创作。
AI 原生 设计与开发全程 AI 驱动;同时对人类与 AI(GEO)双重友好。
设计与代码平权 视觉设计与艺术创作和工程代码享有同等地位;美学不是事后装饰,而是博物馆的基础设施。
契约优先 任何人用任何工具贡献,只要遵守"展品协议"就能无缝接入(详见第 5 章)。
渐进增强 先保证轻、快、可访问,再叠加沉浸与炫酷,绝不本末倒置。
贡献可溯 每一份贡献都可追溯到人、可被认证、可被永久记录。
永不竣工 博物馆是一个持续生长的有机体,而非一次性交付的项目。

3. 核心展区(功能模块)

博物馆划分为五个主展区 + 一个贯穿性的"元展区":

3.1 社群编年史 · The Chronicle

社群从诞生到现在的时间线:关键事件、里程碑、活动、人物。支持时间轴、星图两种叙事视角。

3.2 艺术家作品展 · The Gallery

博物馆的核心展区之一,也是创作者的主舞台。社群艺术家与设计师的作品在此陈列:图像、生成艺术、交互装置、动效、3D、视频等。

  • 作品页:每件作品配有艺术家自述(artist statement)、创作理念、所用工具/模型,以及可选公开的 Prompt 与创作过程。
  • 艺术家/设计师主页:每位创作者拥有独立的作品集页面,是其在 AI 时代的"个人展厅"与名片。
  • 特展与驻留:定期策划主题特展与"艺术家驻留",由社群推选,给予首页焦点位与重点呈现。
  • 可被引用与归功:作品以结构化数据描述(Schema.org CreativeWork),便于被人类与 AI 发现、引用并正确归功于创作者。

3.3 开源项目馆 · The Repository Hall

社群开源项目的展示与导航:项目简介、技术栈、贡献入口、Star/活跃度等,直接链接到源仓库。

3.4 成员 Profile · The Members

社群成员专属个人页:身份、作品、贡献、获得的认证、链上证明。可作为创作者的"AI 时代名片"。

3.5 贡献者展区 · The Wall of Builders

永久刻名的贡献者墙。按贡献类型与认证等级展示,数据来源于 Git 提交记录 + 链上认证,自动生成、不可篡改、可被验证。

3.6(元展区)建造中的博物馆 · The Making-Of

这是 code2art museum 区别于任何普通展示站的灵魂展区。

把博物馆自身的建造过程做成展品:精彩的 PR、关键的设计决策、有趣的 AI 对话与 Prompt、踩过的坑、不同模型/工具产出的对比。观众不只是看成品,而是看见"一群人和一群 AI 是怎么把它一点点造出来的"。 这正是"实验编程"的精神内核。


4. 体验方案设计(多方案对比)

围绕"沉浸"与"轻快"两个基本方向,本章列出五种可能的体验形态,逐一分析利弊后给出推荐。所有形态都服务于同一目标:让作品与创作者获得最好的呈现。

方案 A — 元宇宙沉浸式数字基地

3D 空间,观众"走"进一座虚拟博物馆,在展厅间漫游。

  • ✅ 极强的"宇宙/基地"氛围,记忆点强,适合发布会式的惊艳一击。
  • ❌ 体积重、移动端卡顿、加载慢;对 GEO(机器收录)极不友好;多人协作难(3D 资产协作成本高);可访问性差。

方案 B — 移动优先的卡片流博物馆

信息流 / 卡片瀑布,滑动浏览,秒开。

  • ✅ 快、轻、移动友好、GEO 友好、多人极易协作(每张卡片就是一个独立模块)。
  • ❌ "博物馆感"和沉浸感弱,容易像普通展示站,缺少"宇宙"的浪漫。

方案 C — 双层渐进式博物馆(推荐)

默认进入"轻博物馆"层(方案 B 的快与可访问),提供一键切换到"深空"层(方案 A 的沉浸)。

  • 轻层:语义化 HTML、静态生成、卡片/时间轴/星图导航,秒开、可被 AI 收录、移动完美。
  • 深空层:可选加载的 3D/WebGL 沉浸场景,作为"彩蛋"与"高光体验",不阻塞核心内容。
  • ✅ 同时满足"快"与"沉浸";架构上天然支持不同贡献者分层协作(写内容的、做 2D 的、做 3D 的互不阻塞);先上线轻层即可见效,深空层可后续迭代。
  • ⚠️ 需要前期把"内容"与"渲染"彻底解耦(见第 5 章),这是它能成立的前提。

方案 D — 生长式星系导航(建议作为 C 的导航形态)

每件藏品是一颗星,每位贡献者是一片星域;社群越活跃,星图越璀璨。地图随贡献自动生长。

  • ✅ 完美呼应"宇宙"意象;可视化地表达"社群在生长";新贡献者上线即点亮新星,激励感强。

方案 E — 编年史时间机器(建议用于"社群编年史"展区)

以时间轴为主轴的叙事性浏览,适合承载社群历史。


4.1 推荐结论

采用方案 C(双层渐进式)作为整体架构,以方案 D(星系导航)作为主导航形态,以方案 E(时间机器)承载编年史展区。

这样做的理由:它把"快/沉浸"的二选一变成"渐进增强",既符合手机时代和 GEO,又保留了元宇宙的浪漫;更重要的是,这种分层结构在工程上恰好解决了"多人、多工具、手写 + Vibe coding 混合协作"的核心难题——不同能力的贡献者在不同层、不同模块上并行工作,互不踩脚。


5. 技术架构(核心:可被许多人用不同 AI 工具共建)

这是本项目最关键、也最容易失败的部分。多人、多模型、多工具、手写与 Vibe coding 混杂,如果不做约束,结果必然是风格割裂、互相冲突、无法合并。我们的解法是"契约优先 + 内容数据化 + 单一事实源"。

5.1 第一原则:契约优先的"展品协议"(Exhibit Protocol)

定义一份所有人都遵守的"展品契约"——一个带 schema 校验的清单(manifest)。任何人、用任何工具、写任何框架,只要产出符合协议的展品,就能被自动收录、自动布展。

// 每件展品 = 一个自包含目录 + 一份 manifest
// exhibits/<id>/exhibit.json
{
  "id": "starfield-2025",
  "type": "artwork | project | history | profile | makingof",
  "title": "...",
  "author": ["github-handle"],
  "tools": ["claude", "cursor", "midjourney"],   // 声明所用 AI 工具/模型
  "createdWith": "vibe | handwritten | hybrid",   // 声明创作方式
  "render": { "card": "...", "immersive": "..." },// 轻层/深空层各自的渲染入口(深空可选)
  "geo": { "summary": "...", "schema": "CreativeWork" }, // 机器可读元数据
  "license": "..."
}

关键点:协议是契约,渲染是自由的。 协议保证整体可以拼装、可以被机器读取、可以被认证;至于一件展品内部怎么实现、用什么框架、是手写还是生成,完全交给贡献者。这正是支持"多工具混合"的钥匙。

5.2 单一事实源:仓库宪法(AGENTS.md / 馆规)

在仓库根目录维护一份所有 AI 工具都会读取的规则文件(AGENTS.md / CLAUDE.md / .cursorrules 同源),明确:设计令牌、命名规范、目录结构、展品协议、PR 规范、禁止事项。

无论贡献者用 Claude、Cursor、Copilot 还是别的模型,都先读同一份"宪法",从而在不同模型之间保持一致性。这是跨模型协作不崩盘的核心保障。

5.3 内容与渲染解耦(让"快"与"沉浸"共存)

  • 内容即数据:所有展区内容以结构化数据(如内容集合 / MDX / JSON)存放,schema 强校验。
  • 岛屿架构(Islands):页面默认静态、语义化、秒开;交互部分按需"点亮"为独立岛屿。
  • 双层渲染:同一份展品数据,轻层渲染为卡片/页面(默认、GEO 友好、移动友好),深空层渲染为 3D 场景(可选、懒加载、不阻塞)。

5.4 推荐技术选型(建议,非强制)

维度 推荐 理由
框架 静态优先 + 岛屿架构(如 Astro) 内容集合天然支持"内容即数据 + schema 校验";岛屿允许 React/Vue/Svelte/原生混用,完美适配多框架贡献者;SSG 带来极致 GEO 与移动性能。
沉浸层 WebGL / Three.js(R3F),懒加载 仅在用户主动进入深空模式时加载,不拖累核心体验。
内容格式 MDX / JSON + JSON Schema 人类可写、AI 可写、机器可校验。
设计系统 设计令牌(Design Tokens)+ 组件库,由社群设计师共建维护 既是防止 N 个人 + N 个模型造成视觉割裂的根本手段,本身也是一件可被署名、可被认证的协作设计作品。
上链认证 链上认证服务(如 EAS)部署于 L2,IPFS 做内容寻址 成本低、可验证、适配"爱发电"预算(详见第 7 章)。
协作 GitHub + PR + 自动化 CI 贡献可溯、可审、可自动认证。

5.5 数据稳定性

  • 内容静态化、内容寻址(IPFS/CID)+ 多副本,降低单点失效。
  • 链上认证作为"不可篡改的事实层",即使前端重构,贡献记录依然可验证。
  • CI 中加入:schema 校验、链接检查、视觉回归、GEO 检查(结构化数据是否齐全),不合规的 PR 无法合并。

5.6 GEO(生成式引擎优化 / AI 可收录)

让 AI 与搜索引擎都能"读懂并引用"这座博物馆:

  • 语义化 HTML + Schema.org 结构化数据(CreativeWork / Person / Organization)。
  • 提供 llms.txt 与开放数据 API(展品/贡献者可被程序化读取)。
  • 清晰的标题层级、机器可读的展品摘要、稳定 URL 与 sitemap。
  • 内容以 Markdown/JSON 为源——天然对 LLM 友好。

6. 全程 AI 驱动的开发流程

"全程 AI 驱动"不是口号,而是一套可落地的协作流水线。

  1. 构思与定调:由社群设计师/艺术家主导视觉方向与策展叙事,AI 辅助生成展区方案、视觉风格、文案与信息架构。
  2. 建造:贡献者用各自的 AI 工具(Vibe coding)或手写代码产出符合"展品协议"的展品。
  3. 守门:CI 中由自动化规则 +(可选)AI 审查对 PR 做协议校验、风格检查、GEO 检查。
  4. 布展:合并后由静态构建自动把新展品布置进博物馆、点亮星图、更新贡献者墙。
  5. 认证:合并即触发认证流程(见第 7 章)。
  6. 存档:精彩的建造过程(PR、Prompt、AI 对话)自动/人工沉淀进"建造中的博物馆"元展区。

7. 贡献与认证机制

7.1 什么算贡献

代码、Prompt、skill、艺术作品、视觉设计、动效与 3D 资产、内容文案、文档、策展、评审——无论偏工程还是偏创意,只要是合并进仓库的开源提交,都同等算作贡献。

7.2 认证:实验编程认证(code2art Certified)

以"开源提交"为唯一衡量标准,分级发放认证:

等级 触发条件(示例,待社群细化)
Contributor 首个被合并的有效贡献
Builder 持续贡献,或贡献核心模块/展品
Curator / Architect 主导展区、定义协议、长期维护

认证不分工程与创意:写代码、做设计、创作艺术、策展,都走同一套认证体系、享有同等荣誉,并可按贡献领域标注「工程 / 设计 / 艺术 / 内容 / 策展」标签,让每一类创作者都被清晰看见。

7.3 上链与永久署名

  • 每次合并的贡献,生成一条链上认证(Attestation):记录贡献者、贡献类型、内容哈希、时间。
  • 认证可表现为灵魂绑定凭证(SBT)/ 链上证书,归属创作者,可被任何第三方验证、可携带至其个人 Profile 与外部场景。
  • 贡献者墙与个人 Profile 的数据来源 = Git 记录 + 链上认证,自动生成、不可伪造、永久留存。

设计取向:上链方案保持轻量、低成本(L2 + 内容寻址),服务于"荣誉与可验证",而非投机。


8. 协作与治理

  • 协议公开、治理透明:所有决策走公开 Issue / Discussion / PR。
  • 角色:发起人/维护者(守护宪法与协议)、策展人(负责展区与叙事)、设计师/艺术家(主导视觉系统、品牌与作品)、工程贡献者(产出技术展品与基础设施)、社群(提案与评审)。各角色平权,无主次之分。
  • 轻量准入:读懂仓库宪法 → fork → 按展品协议产出 → 提 PR → 通过 CI 与评审 → 合并 → 自动认证。
  • 可持续性:高度自动化(自动布展、自动认证、自动建墙)降低维护者负担,让项目即使在低人力下也能运转。

9. 路线图(建议分阶段,永不竣工)

阶段 目标 关键产出
阶段 0 · 共识与地基 立项、定调、定契约 仓库宪法(AGENTS.md)、展品协议 schema、设计令牌、仓库骨架、贡献指南
阶段 1 · 最小可展 MVP 轻层先跑起来 轻博物馆层、星系/时间轴导航、若干种子展品、贡献者墙 v1、认证 v1(先链下后链上)
阶段 2 · 沉浸与上链 加炫酷、加可信 深空沉浸层(懒加载)、认证正式上链(SBT/Attestation)、"建造中的博物馆"元展区
阶段 3 · 生态化 让它被看见、被复用 开放数据 API、GEO 深化、社区策展机制、多语言、可被 fork 的"博物馆模板"

每个阶段都应可独立发布、可见成效,避免"憋大招"式风险。


10. 风险与对策

风险 对策
多人 + 多模型导致视觉/风格割裂 设计令牌 + 组件库 + 仓库宪法 + CI 视觉检查;展品"协议统一、实现自由"。
沉浸层过度工程拖垮进度 渐进增强:先交付轻层,深空层永远是"可选彩蛋",不阻塞核心。
AI 生成内容的质量与版权 展品声明工具/模型/创作方式;明确版权与协议;评审守门;原创优先,避免抄袭既有艺术家作品。
上链成本与复杂度 选 L2 + 内容寻址,轻量化;先链下认证、后平滑上链。
维护者带宽不足(爱发电常见) 极致自动化(自动布展/认证/建墙);治理透明、角色可分担。
贡献归属争议 一切以 Git 记录与链上认证为准,公开可验证。

11. 命名与品牌

  • 中文暂定名:实验编程博物馆
  • 英文名:code2art museum
  • 含义:code2art 精准捕捉了社群"以代码 / Prompt / skill 通向艺术与创作"的内核;museum 点明其"收藏、展示、存档、永久"的定位。建议保留全小写写法,呼应实验、亲切、AI 原生的调性。
  • 品牌精神关键词:实验、开源、AI 原生、生长、被看见。

12. 结语

code2art museum 不是要做"又一个炫酷的展示站"。它要做的是:为 AI 时代的开源创作者,建一座由他们自己、用他们自己的方式建造的、永远在生长的家。

建造它的过程,就是它最重要的展品。

欢迎所有人,带上你的代码、你的设计、你的作品、你的 Prompt、你的 skill、你的脑洞——来点亮属于你的那颗星。