mcpField
N
nutmeg-store

nutmeg-store

github.com/withqwerty数据与数据库55158 次安装今天更新
代码仓库

关于 nutmeg-store

nutmeg-store 是一项为足球数据选择存储格式、项目结构和发布方式的技能。它按项目规模和用户目标提供建议,并支持控制原始数据是否纳入研究项目打包。

主要功能

  1. 01按项目规模选择存储方案
  2. 02足球数据目录结构建议
  3. 03仪表板与静态网站发布选项
  4. 04数据共享方式建议
  5. 05可控制原始数据的研究打包
  6. 06按目标提供成本提示

适用场景

  1. 01为足球分析数据选择格式
  2. 02发布仪表板或静态可视化
  3. 03与协作者共享数据集
  4. 04打包研究成果以供审阅或交接

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/withqwerty/nutmeg --skill nutmeg-store

安装后在 Claude Code 中输入/nutmeg-store确认已加载。

详细介绍

存储

帮助用户为其足球数据选择存储格式、位置和发布方式。

准确性

在回答有关特定提供方事实(ID、端点、架构、坐标、速率限制)的任何问题之前,请阅读并遵循 ${CLAUDE_PLUGIN_ROOT}/docs/accuracy-guardrail.md。始终使用 search_docs,绝不要根据训练数据猜测。

首先:检查配置文件

读取 .nutmeg.user.md。如果文件不存在,则使用合理的默认设置(Python 和 pandas,中级水平)继续,并在最后建议运行 /nutmeg 设置。

存储格式决策树

小型项目(< 100MB,单用户)
格式最适合工具
JSON原始事件数据、API 响应任何语言
CSV表格统计数据,易于共享电子表格、pandas、R
Parquet列式分析、快速查询polars、pandas、DuckDB、Arrow
SQLite关系型查询、多张表任何语言、数据库浏览工具

建议: 原始数据从 JSON 入手,处理后的数据使用 Parquet。

中型项目(100MB - 10GB)
格式最适合备注
Parquet 文件分析工作负载比 JSON 小 5-10 倍,列式读取速度快
DuckDB对本地文件进行 SQL 分析可直接查询 Parquet/CSV,无需服务器
SQLite带联接的关系型数据单个文件、可移植、符合 ACID

建议: 使用 Parquet 存储,使用 DuckDB 查询。

大型项目(> 10GB,多用户)
解决方案最适合费用
PostgreSQL生产应用、复杂查询可免费自托管;托管服务需付费
BigQuery大规模分析查询有免费额度,之后按查询付费
Cloudflare R2对象存储(原始文件)有免费额度,之后按 GB 付费
S3 / GCS大规模对象存储按 GB 付费

价格和免费额度会变化。在报价前,请查看提供方当前的定价页面。

目录结构

建议足球数据项目使用以下结构:

project/
  data/
    raw/                  # Untouched API/scrape responses
      statsbomb/
        events/
        matches.json
      fbref/
        2024/
    processed/            # Cleaned, transformed data
      events.parquet
      shots.parquet
      passes.parquet
    derived/              # Computed metrics
      xg_model.parquet
      passing_networks/
  notebooks/              # Analysis notebooks
  scripts/                # Data pipeline scripts
  outputs/                # Charts, reports, exports
  .env                    # API keys (gitignored)
  .nutmeg.user.md         # Nutmeg profile

发布和共享

交互式仪表板
平台语言费用备注
StreamlitPython免费(社区云)最受欢迎的足球分析工具。可从 GitHub 部署
ObservableJavaScript免费额度非常适合 D3.js 可视化。Notebooks + Framework
ShinyR免费额度(shinyapps.io)与 R 生态系统集成
GradioPython免费(HuggingFace Spaces)快速演示 ML 模型
静态网站
平台备注
GitHub Pages免费。适合静态图表(D3、matplotlib 导出内容)
Cloudflare Pages免费。比 GH Pages 更快、功能更多
Vercel免费额度。适合 Next.js/Astro 网站
共享数据
方法最适合
GitHub 仓库小型数据集(< 100MB),代码和数据放在一起
GitHub Releases较大的文件(查看 GitHub 当前的大小限制)
Kaggle Datasets社区共享,易于发现,免费
HuggingFace Datasets面向 ML、支持版本管理、免费
移交研究项目

在研究项目中(存在 research/.active),使用 python3 "${CLAUDE_PLUGIN_ROOT}/core/nutmeg.py" bundle --raw no(或 --raw yes)将工作打包给队友、审查者或客户。每次都必须询问用户选择哪种方式:

  • --raw no 不会包含原始数据(项目的 data/、运行输出和图表快照),而是按哈希列出这些数据。 适用于获得许可的提供方数据或俱乐部数据。
  • --raw yes 会包含这些数据。仅当用户有权共享数据时使用;该选项会显示团队的许可说明。

打包内容始终包括问题、计划、日志、收据、输出、包含代码的运行记录、数据清单和环境(锁定文件,或 Python 版本和软件包列表)。

社交媒体 / 内容
输出工具备注
静态图表matplotlib、ggplot2、D3.js导出为 PNG/SVG
动画图表matplotlib.animation、D3 transitions导出为 GIF/MP4
Twitter/X 帖子串图表图片 + 替代文本无障碍访问很重要
博客文章Markdown + 嵌入式图表GitHub Pages、Medium、Substack

成本意识

根据用户的 .nutmeg.user.md 目标,提示相关成本:

  • 探索 / 学习: 所有内容都可以免费使用。StatsBomb 开放数据 + Jupyter/Colab + GitHub Pages。
  • 内容创作: Streamlit Community Cloud 免费。Cloudflare Pages 免费。
  • 专业用途: 为商业数据访问预留预算。供应商定价需协商,因此不要引用具体金额。
  • 产品: 数据库托管($7-50/mo),数据许可成本需单独考虑。

评论

支持 Markdown