portaljs

用一句话描述需求,AI 自动生成数据门户并接入数据源

PortalJS 是一个 AI 原生的数据门户构建框架,旨在解决传统数据门户开发周期长、数据接入复杂的问题。它允许开发者通过自然语言描述需求,利用智能体技能自动生成完整的数据门户骨架,并在几分钟内接入 CKAN、GitHub、Frictionless 等多种后端数据源。核心能力包括:基于 Next.js 的现代前端框架、MCP 协议支持、可扩展的智能体技能库,以及数据网格(Data Mesh)理念的集成。通过 CLI 工具和 AI 协作,用户无需从零编写大量代码,即可快速搭建具备数据浏览、搜索、可视化等功能的数据门户。该项目特别适合开放数据平台、数据目录、数据网格等场景,降低了数据共享与发布的技术门槛。

开源 unknown 智能体
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2356
维护状态 较活跃
是否开源
定价模式 unknown

项目数据

分类智能体
开发团队datopian
所属国家
定价模式unknown
价格说明定价信息待确认
访问状态
是否开源
开源协议MIT
主要语言TypeScript
技术栈/模型agent-skills,ai,ai-agents,ckan,claude-code,data-mesh,data-portal,datahub,dataverse,dkan,mcp,nextjs,open-data,open-data-portal,opendatasoft,openmetadata,skills,socrata
GitHub 星标★ 2356
30天Star增速
HF 下载量
上线时间2011-10-14 00:00:00
最近更新2026-09-22 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数4

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 7 步

环境要求

  • Node.js 22 或更高版本(README 明确要求 Node 22+)
  • 可用的 npm / npx 命令行环境
  • 终端可访问网络(npm 源与 GitHub raw 文件)
  • 可选:Claude Code,用于使用 PortalJS 技能自动建站

安装与启动步骤

  1. 1创建门户项目

    在终端用一条命令生成名为 my-portal 的 Next.js 数据门户骨架,除 Node 22+ 外无需额外安装。

    npm create portaljs@latest my-portal
  2. 2启动开发服务器

    进入生成的 my-portal 目录并运行 dev 脚本,README 说明默认访问地址为 http://localhost:3000。

    cd my-portal
    npm run dev
  3. 3查看三个页面

    浏览器打开后可见 Home、Catalog(/search)和数据集 Showcase(/@/),内容为示例数据。

  4. 4安装 AI 技能

    把 PortalJS 的 Claude Code 技能安装到 ~/.claude/commands,一次安装后任意目录都能调用,需重启或新开会话。

    curl -fsSL https://raw.githubusercontent.com/datopian/portaljs/main/scripts/install-portaljs-skills.sh | bash
  5. 5自动生成门户

    在 Claude Code 会话中用 /portaljs-new-portal 描述需求,即可生成 Home、Catalog、Showcase 三个界面。

    /portaljs-new-portal "Auckland Council open data portal"
  6. 6接入自己的数据

    把自有 CSV/JSON 加入 datasets.json,页面会自动渲染,无需手写代码;也可用 /portaljs-add-dataset 加载。

  7. 7备选:使用裸模板

    不想用 AI 时,用 tiged 拉取 portaljs-catalog 示例模板,安装依赖后同样在 3000 端口启动。

    npx tiged datopian/portaljs/examples/portaljs-catalog my-portal
    cd my-portal && npm install && npm run dev

关键配置

配置项必填说明示例
datasets.json数据清单文件,加入自定义 CSV/JSON 后门户自动渲染air-quality.csv

如何确认成功

运行 npm run dev 后,浏览器打开 http://localhost:3000,能看到 Home、/search 目录页与数据集 Showcase 页即成功。

常见问题

Q:需要预先安装什么环境?

A:README 说明除 Node 22+ 外不需要安装其他东西;项目脚手架与依赖由 npm create 自动拉取。

Q:不用 AI 助手可以建站吗?

A:可以。README 提供裸模板方式:npx tiged datopian/portaljs/examples/portaljs-catalog my-portal,再 npm install && npm run dev。

Q:安装技能后找不到 /portaljs 命令?

A:技能装在 ~/.claude/commands,需重启 Claude Code 或新开会话,然后输入 / 即可看到所有技能。

Q:如何换成自己的数据?

A:把自有的 CSV/JSON 文件加入 datasets.json,门户会自动渲染;也可调用 /portaljs-add-dataset 或 /portaljs-add-resource 加载数据。

Q:能不能对接 CKAN 后端?

A:可以,使用技能 /portaljs-connect-ckan 把门户指向 CKAN 后端,部署则用 /portaljs-deploy。

注意事项

  • 开发服务器默认端口为 3000,README 中地址为 http://localhost:3000。
  • npm create 生成的模板是可自由编辑的普通 Next.js 项目,没有锁定,便于二次开发。
  • 技能相关问题可参考仓库内的 .claude/INSTALL.md,README 提到还有版本化插件或从克隆仓库运行两种安装方式。
  • 示例模板 portaljs-catalog 的路径为 datopian/portaljs/examples/portaljs-catalog,请勿改成其他路径。

核心亮点

  • AI 驱动脚手架:通过自然语言生成门户基础,显著减少手工编码
  • 多后端适配:内置 CKAN、GitHub、Frictionless 等连接器,数据接入灵活
  • 基于 Next.js:现代 React 框架,性能好且生态丰富

不足之处

  • 文档/社区待观察
  • AI 生成代码的定制化能力可能有限,复杂需求仍需手动调整

适用场景

  • 政府或机构快速搭建开放数据平台
  • 企业内部数据目录与数据网格建设
  • 数据科学家或分析师快速发布数据集供团队共享

替代项目

CKAN、Dataverse、DKAN

项目介绍

portaljs 是开发框架领域的开源项目,由 datopian 开发,2011 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(2,356)位列前 30%,在开发框架分类中处于中上游。

项目保持着较活跃的维护节奏,最近一次代码更新于 2026-09-22。从国内网络环境看,可直接访问。

它主要面向的使用场景是:政府或机构快速搭建开放数据平台。同类可对比的替代方案包括 CKAN、Dataverse、DKAN。

上一篇:compass

下一篇:WFGY

同类项目推荐

langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 146874 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 166529 2026-08-09
pi 开源

一套 TypeScript 工具包,快速搭出能写代码的 AI agent

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

★ 108504 2026-09-12