cohort-harbor README

The project's README from github.com/lantingzhang1119/cohort-harbor. As one markdown file: README.md.

CohortHarbor

可自托管的员工入职、制度学习与考试平台。CohortHarbor 把员工账号、入职资料、制度版本、在线学习、考试任务、通知邮件和私有文件保护放在一个全栈应用中,适合内部部署、二次开发和开源协作。

CI CodeQL License: MIT

当前仓库提供的是可公开使用的通用代码与 mock 数据。仓库不包含真实员工、生产数据库、企业制度原件或 SMTP/API 密钥;部署时请通过环境变量和私有存储注入组织自己的数据。

项目介绍

平台面向企业 HR、行政、IT 和新员工,支持从员工账号建立、入职资料发布、制度阅读到考试与通知的完整闭环。管理员可以管理组织内容和员工,员工只能访问当前账号有权限且已发布的内容。

核心能力

Features

“AI knowledge assistant”目前是清晰的扩展方向:当前运行时没有接入 OpenAI 或其他 LLM,也没有虚构一个已上线的 Agent。现有代码提供制度/文档内容、权限边界、预览和业务流程基础,后续可在此基础上接入检索增强问答。详见 docs/ai-agent.md。

Tech Stack

Quick Start

corepack enable
corepack prepare [email protected] --activate
pnpm install --frozen-lockfile
cp .env.example .env
# 编辑 .env,至少填写 ADMIN_USERNAME、满足策略的 ADMIN_PASSWORD,
# 以及由密码管理器生成的 32 字符以上 AUTH_TOKEN_SECRET
pnpm db:ensure
pnpm db:generate
pnpm db:migrate
pnpm db:seed
pnpm dev

打开 http://localhost:3000。生产构建使用:

pnpm build
pnpm start

完整环境变量说明、SQLite 初始化、邮件配置和私有存储注意事项见 docs/deployment.md。.env、数据库、上传目录和常见 Office/PDF 文件均已加入 .gitignore,不要将组织数据复制到 Git 工作树。

Architecture

Browser
  ├─ Employee UI ─┐
  └─ Admin UI ────┼─ Next.js App Router pages + API routes
                  ├─ session/RBAC guards
                  ├─ feature services
                  ├─ Prisma 7 / SQLite
                  └─ private storage + optional SMTP / local document tools

src/app 负责页面和 API 路由,src/features 按认证、员工、制度、资料包、考试、邮件、门户和审计等领域组织业务服务,prisma 保存 schema 与迁移,storage/private 保存不应公开的运行时资产,tests 与 e2e 提供自动化验证。数据流和边界见 docs/architecture.md。

Security Design

更多边界和部署建议见 docs/security.md。

Public Release Integrity

公开仓库使用独立的干净 Git 历史,不包含私有源仓库的分支、标签、评审记录或本机运行产物。示例邮箱使用 .invalid 保留域名;固定测试口令只服务于自动化测试,不是部署默认值。发布时同时提供 NOTICE、第三方归属清单、REUSE SPDX 声明 和 SPDX SBOM。

Roadmap

Documentation

Contributing

欢迎提交 Issue、改进文档、修复 bug 或贡献功能。请先阅读 贡献指南 和 行为准则,并在提交 Pull Request 前运行 lint、typecheck、build 和相关测试。安全问题请按 SECURITY.md 私下报告。

License

项目原创代码与 SVG 品牌资源使用 MIT License。依赖和 vendored 资产保留各自许可证,详见 NOTICE、THIRD_PARTY_NOTICES.md 与 LICENSES/。MIT 许可证不授予第三方商标权,也不覆盖部署者自行导入的组织数据或内容。

cohort-harbor (lantingzhang1119/cohort-harbor)

Searching Database…

Что это?CohortHarbor — это self-hosted платформа, объединяющая в одном full-stack приложении учётные записи сотрудников, материалы для адаптации, версионированные корпоративные политики, онлайн-обучение, экзамены, автоматические приветственные письма и защиту приватных файлов; она рассчитана на внутреннее развёртывание и дальнейшую кастомизацию.
Это SaaS, в котором я регистрируюсь, или то, что я запускаю сам?Это self-hosted решение: вы сами разворачиваете приложение Next.js и подключаете его к собственной базе SQLite и хранилищу приватных файлов, а не пользуетесь хостинг-сервисом.
Как его запустить?Склонируйте репозиторий, установите зависимости через pnpm, выполните 'prisma generate' (привязано к postinstall), затем запустите 'pnpm dev' (next dev) для разработки или 'pnpm build && pnpm start' для продакшена; подробности настройки переменных окружения и SQLite — в docs/deployment.md.
Что нужно для запуска?Нужны Node.js 24.14.0 и pnpm 11.16.0; база данных работает на SQLite через Prisma-адаптер better-sqlite3, поэтому отдельный сервер базы данных или Docker не требуются.
Есть ли там уже реальные данные политик или работающий ИИ-ассистент?Нет — в публичном репозитории только обобщённые мок-данные (пример организации, примеры сотрудников, общие экзаменационные вопросы) и нет реальных сотрудников, продакшен-базы или ключей SMTP/API; «ИИ-ассистент знаний» числится в роадмапе и пока не подключён ни к какой LLM.
Что именно покрывает здесь лицензия MIT?По MIT лицензированы только оригинальный код CohortHarbor и его SVG-брендовые материалы; входящие в комплект и vendored-зависимости сохраняют собственные лицензии, а грант MIT не покрывает товарные знаки и никакие данные организации, которые вы импортируете при развёртывании.
Какие роли поддерживает система прав?В CohortHarbor три роли — SUPERADMIN, ADMIN и EMPLOYEE; они принуждаются серверными проверками доступа (guards) на админ-маршрутах, действиях только для superadmin, API сотрудников и скачивании файлов, поскольку одно лишь скрытие элементов UI не считается границей безопасности.
Что сотрудники реально могут делать в системе экзаменов?Платформа включает онлайн-экзамены с банками вопросов, назначение экзаменов, пересдачи за неудачные попытки и централизованное управление результатами — в дополнение к чтению политик и доставке материалов для адаптации.
Почему вместо более строгого DRM используется водяной знак?На страницах политик, руководств и экзаменов может отображаться водяной знак с именем текущей сессии, чтобы отслеживать и удерживать от утечки контента, но README прямо говорит, что это не заменяет контроль доступа и не может остановить скриншоты.
Что планируется дальше для CohortHarbor?Роадмап включает ИИ-вопросы и ответы по политикам с учётом прав доступа и с цитатами, более широкую автоматизацию и согласование процессов адаптации, а также подключаемую интеграцию базы знаний и векторного индекса для продакшен-развёртываний.
Size
19.7 MB
Stars
198
Updated
CommitAug 12
Age
2mo
Commits · 90 Days