Skip to content

Latest commit

 

History

55 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

灵境 · Innerscape

把你的内在世界,做成一个可以走进去、并随你生长的三维空间。

名字取自 1990 年钱学森对 "Virtual Reality" 的译法——"灵境",一个虚的、却能走进去的、属于个人精神的空间。

一句话定位:会用一句话描述自己,就能拥有一个属于自己的世界——往里写、往里放,它逐渐变成"你"。

这是 MVP(阶段 ①+②+③):一个房间、三个功能区、内容可写可存、刷新仍在、可导出复现。

快速开始

npm install
npm run dev      # http://localhost:5173

打开后:

  • 拖拽环视房间,滚轮缩放。
  • 点击书架 / 物件基座 / 唱片机任一功能区,镜头平滑飞入;左上"← 返回房间"回到全景。
  • 书房:写一段思考 → "放进书架",书脊随之 +1;点书脊或列表项可重读、编辑、删除。
  • 物件博物馆:填标题/来历,选一个几何体与颜色 → "放上基座",可旋转端详。
  • 唱片机:贴一个音频链接 + 标题 → 播放,唱片随之转动。
  • 顶栏:暖/冷/中/雨 切换房间心境(光照随之变);最近 看时间线;导出/导入 备份与复现整个世界。

所有内容存在浏览器本地(IndexedDB),刷新不丢。导出的 JSON 就是你拥有的整个世界,可自行同步到 OneDrive / Obsidian。

命令

命令 作用
npm run dev 本地开发(HMR)
npm test 单元测试(io 往返 / IndexedDB 往返 / store)
npm run build 类型检查 + 生产构建
npm run preview 预览生产构建

架构一句话

配置即唯一真相源:整个世界由 { world, entries } 描述,渲染层只读它。 因此"生长 / 时间旅行 / 后期接 AI"都只是往数据里追加,渲染层无需改动。

src/
  config/   types.ts(核心契约) · defaultWorld.ts(初始世界)
  store/    useWorld.ts(zustand 唯一真相源 + CRUD)
  data/     db.ts(Dexie 落盘) · io.ts(导出/导入与校验)
  scene/    Experience/Room/Lighting/CameraRig + zones/(书架·物件·唱片机)
  ui/       Hud + 各功能区面板(DOM 覆盖层)
  hooks/    usePersistence(启动时从本地水合)

约束与取舍见 CLAUDE.md(仓库守则)与 DECISIONS.md(选型理由)。

还没做的(后期)

时间旅行滑条、AI 自然语言生成配置、香气室 / 人物志墙、照片转 3D、多用户云同步。 内核已为这些留好了位置——它们都只是"往数据里加",不动渲染层。

About

灵境 Innerscape:一句话描述自己就能生成、可写入可生长的个人三维空间(MVP)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages