# Hydro API Docs > Hydro 在线评测系统插件开发 API 文档。 > Deployed: https://hydro-plugin-api-reference.pages.dev > Source: https://github.com/hydro-dev/Hydro This file is an LLM-friendly index. Full content: [llms-full.txt](https://hydro-plugin-api-reference.pages.dev/llms-full.txt) ## 核心 - [Context 与 Service](https://hydro-plugin-api-reference.pages.dev/backend/context/index.md): 构成 Hydro 可扩展性基础的核心插件系统类 - [错误类 (Error Classes)](https://hydro-plugin-api-reference.pages.dev/backend/error/index.md): Hydro 插件开发中可用的所有错误类型,包括基础错误类和自定义业务错误 - [EventMap (事件总线)](https://hydro-plugin-api-reference.pages.dev/backend/event/event-bus.md): Hydro 插件系统的事件总线,所有可监听事件定义在 EventMap 接口中 ## 框架 - [@hydrooj/framework 装饰器与验证器](https://hydro-plugin-api-reference.pages.dev/backend/framework/decorators.md): 用于路由处理方法的参数绑定装饰器和类型验证器 - [@hydrooj/framework 重新导出](https://hydro-plugin-api-reference.pages.dev/backend/framework/exports.md): 通过 hydrooj 从 @hydrooj/framework 重新导出的核心 Web 框架接口 ## 处理器 - [JudgeHandler](https://hydro-plugin-api-reference.pages.dev/backend/handler/judge.md): 评测系统扩展接口,用于处理评测任务生命周期、结果回调和守护进程通信 ## 数据模型 - [BlackListModel](https://hydro-plugin-api-reference.pages.dev/backend/models/blacklist-model.md): 用于按 ID 封禁用户或实体的黑名单模型,支持可选过期时间 - [BuiltinModel](https://hydro-plugin-api-reference.pages.dev/backend/models/builtin-model.md): 内置常量、权限标志、特权标志、评测状态枚举和 UI 元数据 - [ContestModel](https://hydro-plugin-api-reference.pages.dev/backend/models/contest-model.md): 比赛模型,用于管理多种评分规则的比赛、排行榜生成、气球通知和答疑 - [DiscussionModel](https://hydro-plugin-api-reference.pages.dev/backend/models/discussion-model.md): 讨论(论坛)模型,用于管理线程化讨论、回复、表情回应和讨论节点 - [DocumentModel](https://hydro-plugin-api-reference.pages.dev/backend/models/document-model.md): 通用文档存储模型,提供跨所有文档类型的类型化 CRUD 和子文档操作 - [DomainModel](https://hydro-plugin-api-reference.pages.dev/backend/models/domain-model.md): 域(租户/组织)模型,提供域 CRUD、用户角色成员管理和角色权限管理 - [MessageModel](https://hydro-plugin-api-reference.pages.dev/backend/models/message-model.md): 消息模型,用于发送、查询和删除用户消息及系统通知 - [OauthModel](https://hydro-plugin-api-reference.pages.dev/backend/models/oauth-model.md): OAuth 提供商与账号关联模型,用于注册第三方登录和管理平台到用户映射 - [OpcountModel](https://hydro-plugin-api-reference.pages.dev/backend/models/opcount-model.md): 频率限制模型,用于跟踪和强制执行时间窗口内的操作计数 - [OplogModel](https://hydro-plugin-api-reference.pages.dev/backend/models/oplog-model.md): 操作日志模型,用于记录和查询审计日志条目 - [ProblemModel](https://hydro-plugin-api-reference.pages.dev/backend/models/problem-model.md): 题目管理模型,提供增删改查操作、测试数据管理和导入导出 - [RecordModel](https://hydro-plugin-api-reference.pages.dev/backend/models/record-model.md): 评测记录模型,提供提交创建、评测任务分发、结果更新和重测 - [ScheduleModel](https://hydro-plugin-api-reference.pages.dev/backend/models/schedule-model.md): 定时任务模型,用于创建、查询和删除延迟或周期性任务 - [SettingModel](https://hydro-plugin-api-reference.pages.dev/backend/models/setting-model.md): 设置注册模型,用于声明用户级、域级和系统级设置 - [SolutionModel](https://hydro-plugin-api-reference.pages.dev/backend/models/solution-model.md): 题解模型,用于管理题目题解、回复和投票 - [StorageModel](https://hydro-plugin-api-reference.pages.dev/backend/models/storage-model.md): 文件存储模型,用于管理通过对象存储后端进行的文件上传、下载和生命周期 - [SystemModel](https://hydro-plugin-api-reference.pages.dev/backend/models/system.md): 系统级键值设置存储,基于 MongoDB 并带有内存缓存 - [TaskModel](https://hydro-plugin-api-reference.pages.dev/backend/models/task-model.md): 后台任务队列模型,用于入队、消费和管理异步任务 - [TokenModel](https://hydro-plugin-api-reference.pages.dev/backend/models/token-model.md): 令牌管理模型,用于创建、查询、更新和删除各种令牌类型 - [TrainingModel](https://hydro-plugin-api-reference.pages.dev/backend/models/training-model.md): 训练计划(课程)模型,用于管理 DAG 结构的训练计划和进度跟踪 - [UserModel](https://hydro-plugin-api-reference.pages.dev/backend/models/user.md): 用户管理模型,提供增删改查操作、认证辅助和用户组管理 ## 服务 - [Handler, ConnectionHandler & requireSudo](https://hydro-plugin-api-reference.pages.dev/backend/service/handler.md): 服务端处理类及用于请求处理的 sudo 装饰器 - [SettingService](https://hydro-plugin-api-reference.pages.dev/backend/service/setting-service.md): 系统配置服务,提供配置读写、基于 Schema 的校验和插件设置注册 - [db (MongoService) & Collections](https://hydro-plugin-api-reference.pages.dev/backend/services/db-and-collections.md): MongoDB 数据库服务,提供集合访问、索引管理、分页和排名工具 - [StorageService](https://hydro-plugin-api-reference.pages.dev/backend/services/storage-service.md): 文件存储后端服务,支持本地文件系统和 S3 兼容对象存储 ## 工具 (Backend) - [工具库](https://hydro-plugin-api-reference.pages.dev/backend/utils/lib.md): 插件开发者可用的各种工具函数和重新导出的第三方模块 - [pipelineUtils](https://hydro-plugin-api-reference.pages.dev/backend/utils/pipeline-utils.md): 批量迭代工具,用于遍历系统中给定类型的所有文档 ## Other - [index](https://hydro-plugin-api-reference.pages.dev/index.md) ## 子组件 - [AutoComplete 组件](https://hydro-plugin-api-reference.pages.dev/ui/components/autocomplete.md): 基于 DOM 的自动完成组件族,绑定到 input 元素并渲染下拉选择器 - [loadMonaco](https://hydro-plugin-api-reference.pages.dev/ui/components/monaco.md): 按需加载 Monaco 编辑器,支持可选语言特性和插件扩展 - [download / ZipDownloader](https://hydro-plugin-api-reference.pages.dev/ui/components/zip-downloader.md): 流式创建并传输 ZIP 压缩包到浏览器,支持并发文件下载和重试 ## UI 组件 - [前端插件系统核心](https://hydro-plugin-api-reference.pages.dev/ui/context.md): 前端插件系统基于 Cordis 的核心类型和全局上下文实例 - [对话框系统](https://hydro-plugin-api-reference.pages.dev/ui/dialog.md): 模态覆盖层用于用户交互,从简单提示到复杂的多字段表单 - [懒加载系统](https://hydro-plugin-api-reference.pages.dev/ui/lazyload.md): 前端模块懒加载系统,支持动态加载脚本和插件贡献的特性 - [Notification, Rotator & selectUser](https://hydro-plugin-api-reference.pages.dev/ui/notification-rotator-selectuser.md): Toast 通知、动画数字翻转器和用户选择对话框 - [initPageLoader](https://hydro-plugin-api-reference.pages.dev/ui/page-loader.md): 前端页面加载器初始化函数 - [前端页面注册系统](https://hydro-plugin-api-reference.pages.dev/ui/page.md): 页面注册系统,组织每个页面的初始化逻辑和生命周期回调 - [Socket (Sock)](https://hydro-plugin-api-reference.pages.dev/ui/socket.md): 支持自动重连、心跳及可选 Shorty 压缩的 WebSocket 客户端 - [第三方库重新导出](https://hydro-plugin-api-reference.pages.dev/ui/third-party.md): 预打包的第三方库,由 @hydrooj/ui-default 重新导出 - [uploadFiles](https://hydro-plugin-api-reference.pages.dev/ui/upload-files.md): 文件上传工具,带进度对话框、浏览器关闭防护和逐文件回调 ## 工具 (UI) - [@hydrooj/utils/lib/common](https://hydro-plugin-api-reference.pages.dev/ui/utils/common.md): 前端插件可用的通用工具函数 - [DOM & 异步 & 其他工具函数](https://hydro-plugin-api-reference.pages.dev/ui/utils/misc.md): 前端 DOM 操作、异步控制、流处理及其他零散工具集 - [api() & request 工具](https://hydro-plugin-api-reference.pages.dev/ui/utils/request.md): 面向插件开发者的前端 HTTP 请求工具和语言辅助函数 - [模板 & 国际化工具](https://hydro-plugin-api-reference.pages.dev/ui/utils/template.md): 前端模板渲染与国际化工具集,提供 HTML 模板构建和语言翻译