EGH研究
使用PDF生成和Docker部署,为Ellen Gould Harmon的著作提供完整的离线研究平台
](https://github.com/Surgbc/egh-research/actions/workflows/docker-build.yml)  ](https://www.npmjs.com/~surgbc) 
🚀 Docker快速入门
最快的入门方法是使用我们预构建的Docker镜像:
# Pull and run the latest image
docker pull ghcr.io/gospelsounders/egw-writings-mcp/egh-research-server:latest
docker run -p 3000:3000 ghcr.io/gospelsounders/egw-writings-mcp/egh-research-server:latest
# Test the API
curl http://localhost:3000/health
curl http://localhost:3000/api/docs🌟 概述
EGH Research是一个全面的平台,用于对Ellen Gould Harmon的作品进行线下研究,提供 模型上下文协议(MCP) 和 HTTP REST API 使用高级PDF生成功能访问。
关键组件
- 🔌 EGH研究服务器:双协议服务器(MCP+HTTP API),带离线数据库
- 📥 内容下载器:批量数据提取和数据库填充工具
- 📊 web界面:基于React的现代研究平台
- 🐳 Docker部署:使用GitHub Actions实现生产就绪的容器化
核心功能
- ⚡ 离线操作:完全独立于外部服务
- 🔍 高级搜索:FTS5全文搜索,响应时间低于毫秒
- 📄 PDF生成:按需创建具有可定制格式的PDF
- 🌐 双API:MCP和REST API可实现最大兼容性
- 🐳 Docker就绪:多架构容器(AMD64、ARM64)
- 📱 现代用户界面:用于研究的响应式web界面
📦 建筑
├── apps/
│ ├── local-server/ # Main EGH Research Server (MCP + HTTP API)
│ ├── downloader/ # Data extraction and database tools
│ ├── api-server/ # Live API integration server
│ └── website/ # React-based research interface
├── packages/
│ ├── shared/ # Common utilities and database management
│ └── egw-pdf-generator/ # PDF generation engine
└── .github/workflows/ # CI/CD with Docker builds🛠 安装选项
选项1:Docker(推荐)
# Using Docker Run
docker pull ghcr.io/gospelsounders/egw-writings-mcp/egh-research-server:latest
docker run -p 3000:3000 ghcr.io/gospelsounders/egw-writings-mcp/egh-research-server:latest
# Using Docker Compose
curl -O https://raw.githubusercontent.com/GospelSounders/egw-writings-mcp/master/apps/local-server/docker-compose.yml
docker-compose up -d选项2:全球NPM安装
# Install the research server
npm install -g @surgbc/egw-research-server
# Install supporting tools
npm install -g @surgbc/egw-writings-downloader
# Start the server
egw-research-server --http --port 3000方案3:地方发展
# Clone and setup
git clone https://github.com/surgbc/egh-research.git
cd egh-research
pnpm install && pnpm build
# Start HTTP server
cd apps/local-server
npm run start:http
# Or start MCP server
npm run start:mcp🔧 配置
环境变量
NODE_ENV:开发/生产模式LOG_LEVEL:记录详细信息(调试、信息、警告、错误)PDF_CLEANUP_INTERVAL:PDF文件清理频率
MCP客户端配置
{
"mcpServers": {
"egh-research": {
"command": "egw-research-server"
}
}
}数据库设置
# Download sample data
npx @surgbc/egw-writings-downloader quick-start --zip
# Or use the Make target (development)
make egw-quick-start📖 api参考
HTTP REST API
# Health and status
GET /health
GET /api/docs
GET /stats
# Content access
GET /content/books?page=1&limit=50&lang=en
GET /content/books/{id}
GET /content/books/{id}/toc
GET /search?q=righteousness&limit=20
# PDF generation
POST /content/books/{id}/generate-pdf
GET /pdf/status/{token}
GET /pdf/download/{token}MCP工具
search_local-FTS5高亮显示的全文搜索get_local_book-图书信息和元数据get_local_content-章节和段落内容list_local_books-分页图书列表browse_by_reference-EGW参考代码导航get_context-上下文段落检索get_database_stats-数据库度量和统计
📚 完整的API文档
🐳 Docker与生产
生产部署
# Pull latest production image
docker pull ghcr.io/surgbc/egh-research-server:latest
# Run with persistent storage and health checks
docker run -d \
--name egh-research \
-p 3000:3000 \
-v egh-data:/app/apps/local-server/data \
--restart unless-stopped \
--health-cmd="curl -f http://localhost:3000/health || exit 1" \
--health-interval=30s \
ghcr.io/surgbc/egh-research-server:latest从源代码构建
# Build local image
./scripts/build-docker.sh --tag local
# Build with custom registry
./scripts/build-docker.sh --registry ghcr.io/yourname --tag v1.0.0GitHub操作
该项目包括全面的CI/CD工作流程:
- 🔨 构建与测试:基于推送/PR的自动化测试和构建
- 🐳 Docker构建:多架构容器构建
- 📋 安全扫描:使用Trivy进行漏洞扫描
- 📚 文档:自动部署到GitHub页面
- 🚀 发布:使用Docker发布自动发布
📊 性能和能力
搜索性能
- 亚毫秒 搜索响应时间
- FTS5 带排名的全文搜索
- 突出显示 带有上下文的搜索结果
- 参考导航 (例如,“AA 15.1”、“DA 123”)
PDF生成
- 可自定义格式:页面大小、字体、边距
- 目录:自动生成,深度可配置
- 后台处理:非阻塞PDF生成
- 进度跟踪:实时发电状态
- 自动清理:计划文件清理
数据库功能
- 数据库 使用FTS5全文搜索
- 高效存储 参考索引
- 多语言 支持(150多种语言)
- 离线操作 -安装后不需要互联网
🎯 用例
研究应用
- 学术研究 论艾伦·古尔德·哈蒙的作品
- 主题汇编 跨越多本书
- 参考验证 以及交叉引用
- 上下文分析 与周围段落
教育用途
- 课堂教学 支持离线访问
- 学生研究项目 使用PDF生成
- 学习资料 使用自定义格式创建
- 参考文献查询 在演示过程中
技术集成
- MCP客户端 (Claude等)用于人工智能辅助研究
- REST API 自定义应用程序的集成
- Docker部署 供机构使用
- 批量处理 用于大规模分析
🤝 贡献
我们欢迎捐款!以下是如何开始:
开发工作流程
- 分叉 存储库
- 创建 一个特征分支
main - 制造 您通过测试所做的更改
- 跑
pnpm lint && pnpm build && pnpm test - 提交 pull请求
开发命令
# Setup development environment
pnpm install
pnpm build
# Run tests and linting
pnpm test
pnpm lint
# Start development servers
pnpm dev # All packages in watch mode
pnpm --filter local-server dev # Just the research server
pnpm --filter website dev # Just the web interface
# Build for production
pnpm build
# Docker development
./scripts/build-docker.sh --tag dev
docker run -p 3000:3000 egh-research-server:dev📚 教育和研究用途
该平台是专门为 教育和研究目的 与艾伦·古尔德·哈蒙的著作有关。软件:
- 尊重知识产权 权利和合理使用准则
- 提供工具 用于合法的学术研究
- 允许离线访问 教育机构
- 支持引用 以及参考验证
对研究人员的主要好处
- 完全离线访问 -不依赖外部服务
- 高级搜索功能 -快速找到特定段落
- PDF生成 -为研究创建格式化文档
- 参考交联 -在相关内容之间导航
- 上下文保存 -保持周围内容的准确性
学术引文
在学术工作中使用此软件时,请引用:
EGH Research Platform. (2024).
Offline research platform for Ellen Gould Harmon's writings.
GitHub: https://github.com/surgbc/egh-research🔒 安全与隐私
- 无数据收集:所有处理都在本地进行
- 开源:完全可审计的代码库
- 安全扫描:自动漏洞检测
- 集装箱安全:非root用户和最小攻击面
📄 许可证
MIT许可证-用于教育和研究的开源软件。
看 许可证 完整条款。
🙋♂️ 支持
- 📖 文档:
- 🐛 问题:
- 💬 讨论:
- 📧 电子邮件:联系维护人员解决安全问题
______________________________________________________________________
由开发 surgbc •内置❤️ 用于教育和研究目的
