Aetheria世界数据系统
一个用于管理和共享幻想世界数据的综合系统,具有人工智能优化的RAG文档和美丽的公共网站。
🌟 所得
🤖 AI优化文档
生成专门为RAG(检索增强生成)系统和矢量数据库设计的合并标记文件。非常适合加载到pgvector或其他矢量存储系统中。
🌐 公共文件
漂亮、响应迅速的SolidJS网站通过哈希路由和移动友好的设计自动部署到GitHub Pages。
📊 结构化数据
基于JSON的数据,具有自动TypeScript类型,结合丰富的markdown文档。
🚀 快速开始
查看实时网站
您的世界数据将自动发布在: https://rjordan.github.io/Aetheria
进行更改
- 在中编辑数据文件
/site/src/data/或页面内容/site/src/pages/ - 提交并推送到GitHub
- GitHub Actions会自动重建和部署您的网站!
发展
# Preview site locally (Node.js)
./dev.sh site
# Preview site locally (Bun - faster)
./dev.sh site-bun
# Generate AI-optimized docs for RAG systems
./dev.sh package
# Deploy changes to GitHub Pages
git add . && git commit -m "Update content" && git push🔨 构建命令
该项目使用dotenv进行清洁环境管理:
# Development server (uses .env)
npm run dev
# Production build (uses .env)
npm run build
# GitHub Pages build (uses .env.github)
npm run build:github
# Preview production build
npm run preview环境文件
.env-开发默认值(未承诺).env.example-带有所有选项的模板.env.github-GitHub页面配置
🤖 AI优化文档
该系统生成全面的降价文档,专门针对人工智能消费和RAG系统进行了优化:
AI集成快速入门
# Generate AI-optimized documentation
./dev.sh package
# This creates a timestamped ZIP file with:
# - Consolidated reference documents
# - Individual entity files
# - Cross-reference mappings
# - Master index and navigation所得
- 合并文件:
complete-world-overview.md,all-magic.md,all-characters.md - 个人参考:每个实体的详细文件(地区、角色、魔法学校)
- 参见项:实体之间的显式关系映射
- 矢量就绪:非常适合分块和加载到pgvector或类似系统中
- GitHub发布:通过GitHub Actions自动生成和发布ZIP
非常适合RAG系统
生成的文档是专门为矢量数据库设计的:
- 语义完整性:每份文件都包含完整的上下文
- Chunk友好:矢量数据库分块的自然中断
- 关系映射:显式实体连接以实现更好的检索
- 全面覆盖:个人观点和综合观点
通用数据加载接口
该网站使用可配置的数据加载系统,该系统使用静态文件或API:
// Runtime loading via HTTP fetch (cached automatically)
const magicData = await fetchMagicData() // GET ${DATA_ENDPOINT}/magic.json
const classData = await fetchClassesData() // GET ${DATA_ENDPOINT}/classes.json环境配置
# Copy .env.example to .env and customize
cp .env.example .env
# Default configuration (.env)
VITE_DATA_ENDPOINT=/data # Data source endpoint
AETHERIA_BASE_PATH=/ # Site base path
# Example configurations:
VITE_DATA_ENDPOINT=https://api.example.com/aetheria/data # Remote API
VITE_DATA_ENDPOINT=http://localhost:3000/api/v1/data # Local API server
AETHERIA_BASE_PATH=/Aetheria/ # GitHub Pages path数据架构
- Dotenv集成:清洁环境变量管理
.env文件 - 多个环境:用于开发、GitHub页面等的单独配置。
- 静态文件:JSON文件
/public/data/服务于/data/网址 - 动态API:任何返回具有相同结构的JSON的HTTP端点
- 运行时加载:使用标准
fetch()调用,无编译时依赖关系 - 自动缓存:内存缓存可防止重复请求
数据结构示例
magic.json:包含magic.schools和magic.spells数据classes.json:包含classes.primary和classes.specialized数据- 其他文件:设备、组织、生物、现场配置
益处
- 环境可配置:通过ENV变量在静态文件和API之间切换
- 零捆绑影响:JSON文件未包含在JavaScript捆绑包中
- 离线支持:Service Worker提供缓存数据的脱机功能
- 智能高速缓存:网络优先用于新数据,缓存回退用于离线
- API-就绪:直接替换为真正的网络服务
- 有利于发展:在开发过程中使用本地文件
- 生产灵活:可以从CDN、API或静态文件提供服务##📁 项目结构
/content/- 📝 叙述性内容 (Markdown)-散文、传说和教学文本
/site/public/data/- 🔢 结构化数据 (JSON)-列表、统计数据和属性
/site/-带有数据和页面的SolidJS应用程序
- /src/pages/ -SolidJS页面组件
/docs/-生成的静态站点(GitHub Pages输出)
/ai-docs/-生成的AI优化文档(git除外)
/generate-ai-docs.js-AI文档生成器脚本
/dev.sh-开发工作流程脚本
.github/workflows/-自动化部署和AI文档生成
内容管理哲学
此项目使用 混合方法 保持单一的真相来源:
Markdown在 /content/ (散文):
- ✅ 宗教传说与神性解释
- ✅ 角色创建指南
- ✅ 政治制度说明
- ✅ 任何叙述性或指导性文本
- ✅ 易于编辑,版本控制友好
JSON格式 /site/public/data/ (对于结构化数据):
- ✅ 包含域和对齐的神列表
- ✅ 角色统计和属性
- ✅ 生物能力和威胁等级
- ✅ 区域层次结构和人口统计
- ✅ 模式验证和迭代支持
为什么这很重要:您以适当的格式编辑内容一次,然后 generate-ai-docs.js 将这两个来源结合起来,创建全面的人工智能文档。该网站从JSON读取动态内容,而AI文档则包括结构化数据和叙事上下文。
✨ 特性
人工智能系统(RAG集成)
- 矢量就绪内容:整合的文档非常适合分块和矢量存储
- 综合背景:每份文件都包含完整的信息,不需要导航
- 关系映射:实体之间的显式交叉引用,以便更好地检索
- 多种访问模式:综合概述和单个实体文件
- 自动生成:GitHub Actions会自动创建和发布更新的文档
面向人类(GitHub页面)
- SolidJS SPA:快速、反应灵敏的单页应用程序
- 哈希路由:与GitHub Pages子路径完美配合
- 离线支持:Service Worker允许使用缓存数据进行脱机浏览
- 智能缓存:网络优先策略使在线内容保持新鲜
- 移动友好:适用于所有设备的响应式设计
- 快速导航:初始加载后的即时页面转换
面向开发者
- TypeScript:具有完整IntelliSense的类型安全开发
- 热重新加载:使用Vite快速开发
- 多个运行时:选择Node.js或Bun进行开发
- 自动化部署:零维护发布到GitHub页面
- AI文档管道:RAG系统的自动生成和包装
🎯 用例
- 📖 故事写作:AI使用RAG系统的全面世界知识生成一致、知识准确的内容
- 🎮 游戏精通:丰富的参考资料,辅以矢量搜索的人工智能辅助
- 👥 玩家资源:通过公共网站分享世界信息
- 📚 世界建筑:组织具有丰富交叉引用的复杂信息
- 🌍 社区共享:专业呈现您的幻想世界
- 🤖 AI培训:完美的数据集,用于微调您世界中的语言模型
- 📊 矢量数据库:pgvector和其他RAG系统的即用型文档
🔧 技术架构
- 前端:SolidJS+TypeScript+Vite
- 路由:基于哈希的路由,兼容GitHub Pages
- 样式:SCSS,响应式设计
- AI文档:用于RAG优化降价的Node.js生成器
- 矢量数据库就绪:非常适合pgvector、Chroma或其他矢量存储
- 部署:GitHub操作→ GitHub Pages+AI文档发布
- 发展:多种运行时支持(Node.js/Bun)
非常适合创建丰富的交互式幻想世界,通过RAG为人工智能系统服务,并通过漂亮的网络界面为人类读者服务! 🎉
