Skip to content

Repository files navigation

Research Desk Open

把 Idea、文献、论文、日程与研究流程连成一条可追踪链路的开源科研工作台。

在线示例 · 部署指南 · 数据与隐私 · 参与贡献

Research Desk Open 面向研究生、博士后、独立研究者和小型研究团队。它解决的不是某一个单点任务,而是研究信息在文献管理器、笔记、任务清单、表格和投稿记录之间来回搬运的问题。

仓库自带一套完整的虚构示例研究。克隆后无需账号或数据库即可浏览论文、文献、Idea、研究流程与示例档案。本地默认可以编辑,公开部署建议开启只读模式。

它能做什么

模块 用途
概览 汇总论文状态、在手稿件、文献阅读进度、活跃 Idea 与最近更新
论文 看板式管理计划、写作、投稿和发表,保留里程碑与投稿轨迹
文献 BibTeX 导入、检索、阅读状态、结构化摘录、标签和关联
Idea 从灵感、打磨、验证到立项,记录问题、假设、证据、风险和下一步
日程 管理任务、事件和重复事项,并关联论文、文献与 Idea
研究流程 用九个节点记录问题、检索、Gap、假设、复现、实验、分析和结论
AI 辅助 以选定条目为受控上下文进行整理、对照和写作建议,可选配置
示例档案 展示研究经历与成果如何结构化记录,默认内容完全虚构

为什么不是另一个笔记工具

  • 普通 Markdown 数据:核心研究条目以 Markdown 与 front matter 保存,便于阅读、搜索、备份和迁移。
  • 关系优先:文献可以支撑 Idea,Idea 可以推进为论文,日程和流程继续关联这些实体。
  • 状态可见:首页与看板把“现在该推进什么”放在最前面,而不是只做长期归档。
  • 云服务可选:不接数据库也能使用核心功能,需要在线日程和审计记录时再连接 Supabase。
  • 公开演示安全:支持只读部署,并附带发布前隐私检查清单。

它与常见工具的关系:Zotero 擅长引用与 PDF 库,Logseq/Obsidian 擅长知识笔记,Open Paper 擅长阅读与注释;Research Desk Open 更关注把研究项目的 Idea、证据、稿件、节点和日程连接起来。它可以作为这些工具之上的项目状态层,而不是要求你替换现有工具。

快速开始

环境要求

  • Node.js 20 或更高版本
  • npm 10 或更高版本

本地运行

git clone https://github.com/crazybingoo/research-desk-open.git
cd research-desk-open
npm install
npm run dev

访问 http://localhost:3020。首页是项目说明,/desk 是带示例数据的工作台。

首次运行不需要 .env。需要修改配置时:

cp .env.example .env.local

Windows PowerShell 可使用:

Copy-Item .env.example .env.local

使用自己的数据

核心数据目录如下:

data/
├── papers/          # 论文 Markdown
├── literature/      # 文献 Markdown
├── ideas/           # Idea Markdown
└── resume.md        # 研究者档案

你可以在界面中创建和编辑,也可以直接修改 Markdown。准备正式使用时,建议先复制整个仓库作为私人实例,再删除 data/ 中的示例条目并从界面创建自己的内容。

请勿把含未公开研究、真实受试者信息或个人路径的 data/ 推送到公共仓库。详细边界见 数据与隐私

部署为网站

Vercel

  1. Fork 本仓库,或把它推送到自己的 GitHub 仓库。
  2. 在 Vercel 中导入仓库。
  3. 为公开示例设置环境变量:
NEXT_PUBLIC_RESEARCH_DESK_READONLY=1
  1. 部署并检查 /desk 及各模块。

只读开关会阻止通过界面修改 Markdown 数据。若网站只供自己或团队使用,可同时配置 Basic Auth:

DESK_USER=researcher
DESK_PASSWORD=use-a-long-random-password

完整说明、Node.js 部署和 Supabase 配置见 部署指南

可选配置

环境变量 是否必需 说明
NEXT_PUBLIC_RESEARCH_DESK_READONLY 设为 1 时禁用公开站写入
DESK_USER / DESK_PASSWORD 两项同时设置后启用全站 Basic Auth
SUPABASE_URL 在线日程、流程审计与 AI 历史
SUPABASE_SERVICE_ROLE_KEY Supabase 服务端密钥,绝不能暴露给客户端
OPENCODE_GO_API_KEY 启用可选 AI 辅助

技术栈

  • Next.js 15 与 React 19
  • TypeScript 与 Tailwind CSS
  • Markdown + YAML front matter
  • Supabase,可选
  • Vitest

常用命令

npm run dev       # 本地开发,端口 3020
npm test          # 运行测试
npm run build     # 生产构建
npm start         # 启动生产服务器,端口 3020

项目结构

app/              # 页面与 API 路由
components/       # 工作台组件
data/             # 公开示例数据
docs/             # 部署与隐私文档
lib/              # 数据读写、领域模型与服务
supabase/         # 可选数据库迁移
tests/            # 单元与集成测试

示例数据声明

本仓库中的姓名、机构、研究项目、投稿状态、日程和研究者档案均为虚构内容。真实文献的题名、作者、出版方与 DOI 仅来自公开出版信息。公开版不包含原私人项目的研究记录、个人路径、凭据或 Git 历史。

参考与定位

项目展示与文档结构参考了以下开源工具对“本地优先、可体验示例、清楚说明工作流”的表达方式:

  • research-hub:用示例模式降低首次体验门槛,并清楚说明不同研究工具间的衔接。
  • Open Paper:围绕文献阅读、注释与可核验引用呈现核心价值。
  • Logseq:强调本地优先与开放知识管理。
  • Open Science Desktop:以端到端、可审核研究产物描述科研工作台。

Research Desk Open 不复制这些项目的代码或界面,重点不同:它是个人与小团队的研究项目状态层,连接 Idea、证据、稿件、日程和过程记录。

贡献与许可

欢迎提交 Issue 与 Pull Request。贡献前请阅读 CONTRIBUTING.md,安全问题见 SECURITY.md

本项目采用 MIT License

About

Local-first open-source research workspace for ideas, literature, papers, schedules and auditable workflows.

Topics

Resources

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages