jsPsych音频按钮响应插件2.1.0版本发布解析
jsPsych是一个用于构建行为实验的JavaScript库,它提供了丰富的插件系统来支持各种心理学和行为学研究范式。其中,audio-button-response插件是专门用于呈现音频刺激并收集用户通过按钮进行响应的常用工具。
核心更新内容
本次2.1.0版本的更新主要围绕学术引用规范的改进,为插件增加了标准化的引用信息。具体改进包括:
- 在所有插件和扩展的info字段中新增了citations属性,支持APA和BibTeX两种引用格式
- 在jsPsych包中新增了getCitations()函数,允许用户通过传入插件/扩展名称数组和引用格式字符串来生成规范的引用文本
- 改进了插件模板,默认包含citations字段
- 构建过程中会自动从插件根目录下的.cff文件生成引用信息
技术实现细节
这项改进的技术实现采用了模块化设计思路:
-
引用数据存储:每个插件的info对象现在包含标准化的citations字段,以对象形式存储不同格式的引用文本
-
引用生成函数:新增的getCitations()函数采用了两层处理逻辑:
- 第一层总是优先输出jsPsych核心库的引用
- 第二层处理用户指定的插件列表,按名称匹配并提取预存的引用信息
-
构建流程集成:在项目的构建过程中,构建脚本会自动扫描各插件目录下的.cff(引用文件)文件,将其内容转换为标准化的引用格式并注入到最终构建产物中
使用场景与价值
这项改进为研究者带来了三大核心价值:
-
规范化引用:解决了心理学实验中插件使用难以规范引用的问题,符合学术出版的要求
-
便捷性:通过简单的函数调用即可生成完整的引用文本,无需手动整理
-
标准化:统一的引用格式确保了实验方法部分描述的规范性
典型使用示例:
// 获取jsPsych核心和音频按钮响应插件的APA格式引用
const citations = jsPsych.getCitations(['jspsych', 'audio-button-response'], 'apa');
技术架构影响
从架构角度看,这次更新体现了jsPsych向更学术化方向发展的趋势:
-
元数据丰富化:插件不再仅是功能单元,还承载了学术元数据
-
构建系统扩展:构建流程增加了对学术元数据的处理能力
-
API完整性:补充了学术工作中必不可少的引用相关功能
这种设计既保持了库的轻量级特性,又满足了学术研究的严谨性要求,展现了优秀的技术平衡能力。
开发者建议
对于基于jsPsych进行开发的科研人员,建议:
-
更新到新版本后,可以在实验代码中统一使用getCitations()生成方法部分所需的引用信息
-
对于自定义插件,建议在插件目录中添加.cff文件以确保自动生成正确的引用信息
-
在论文投稿时,可直接使用插件提供的标准引用格式,避免格式问题
这项改进虽然看似微小,但对确保心理学实验的可重复性和学术规范性具有重要意义,体现了jsPsych对科研工作流程的深入理解和技术支持。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0231
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
JoyAI-VL-Interaction-Preview京东开源首个开源、视觉驱动的实时交互模型——它能实时监控视频流,并自主决定何时发言、保持沉默或委托任务。Jinja00
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0150
kornia🐍 空间人工智能的几何计算机视觉库Python02
PaddleParallel Distributed Deep Learning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)C++02