portaljs
Agent skills that build data portals — scaffold a portal, add datasets, charts and maps, connect CKAN, and generate DCAT/Croissant metadata
Installation
Open Claude Code and run this command:
/plugin install portaljs@claude-code-plugins-plus
Use --global to install for all projects, or --project for current project only.
What It Does
PortalJS
The AI-native framework for building data portals.
Describe the portal you want — your agent helps you choose an architecture, scaffolds it, and loads your data.
·
·
Skills (12)
Add a chart (line, bar, area, pie, or scatter) to a dataset's showcase in a PortalJS portal.
Add a dataset (CSV, TSV, JSON, or GeoJSON) to an existing PortalJS portal.
Make a PortalJS portal harvestable by national/EU/US open-data portals — emit standards-compliant DCAT catalog feeds (DCAT 2/3, DCAT-AP, DCAT-US, national profiles) in JSON-LD, Turtle, and RDF/XML at build, with autodiscovery and per-profile conformance checking.
Render a GeoJSON dataset on an interactive Leaflet map in the Views section of a dataset's showcase.
Add another file (resource) to an EXISTING dataset in a PortalJS portal — a data dictionary, methodology, or an additional data file.
Recommend a data-portal architecture (storage, compute, catalog, access, hosting, metadata) from your needs, then hand off to the build skills.
Audit a local or remote tabular file (CSV/TSV) for common data quality issues.
Wire a scaffolded PortalJS portal to a CKAN backend over its API.
Define a dataset's metadata profile — infer a Frictionless Table Schema from its data, add Data Package metadata (license, sources, keywords), and write it into datasets.
Deploy a PortalJS portal to PortalJS Arc — Datopian-managed static hosting on Cloudflare.
Migrate (harvest) datasets between open-data platforms.
Scaffold a new PortalJS data portal from a brief.
Use Cases
Reference implementations live in examples/:
| Example | Backend |
|---|---|
portaljs-catalog |
Canonical template — Home + Catalog + Showcase over a static manifest |
portaljs-template |
Minimal single-page starter |
ckan · ckan-ssg |
CKAN |
github-backed-catalog |
GitHub |
dataset-frictionless |
Frictionless Data Package |
fivethirtyeight · openspending · turing |
Real-world portals |