portaljs-connect-ckan

Featured

Wire a scaffolded PortalJS portal to a CKAN backend over its API. Generates a tiny server-side fetch client (no runtime dependency) and feeds the /search catalog and /@namespace/slug showcases from CKAN instead of datasets.json. Use when connecting an existing portal to a live CKAN instance instead of a static manifest.

AI & Automation 2,343 stars 334 forks Updated today MIT

Install

View on GitHub

Quality Score: 99/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# PortalJS — Connect CKAN ## Overview Connect an existing `portaljs-catalog` portal to a live CKAN backend for the "decoupled / any backend" path. The portal stops reading the static `datasets.json` manifest (and files in `/public/data/`) and instead feeds its two data surfaces — the **`/search` catalog** and the **`/@namespace/slug` showcases** — straight from a CKAN instance's REST API (`package_search` / `package_show`) through a generated fetch client. Output is plain, editable Next.js code with **no runtime dependency** — never `@portaljs/ckan`, whose bundle wires React UI components to React 18 internals and crashes at import under the template's React 19. Pages fetch CKAN server-side in `getStaticProps`/`getStaticPaths`, so the catalog is pre-rendered at build time and the site can still be statically deployed. Run this right after `portaljs-new-portal` to swap a freshly scaffolded portal's sample data over to CKAN. ## Prerequisites - A scaffolded PortalJS portal (see `portaljs-new-portal`) with `package.json`, `pages/`, `datasets.json`, `pages/search.tsx`, and `pages/[owner]/[slug].tsx` present. - A CKAN base URL that is publicly reachable, e.g. `https://demo.dev.datopian.com`. - Node 18+ and npm available in the portal directory (no new packages are installed). ## Instructions The canonical, full step-by-step workflow is [`.claude/commands/portaljs-connect-ckan.md`](https://github.com/datopian/portaljs/blob/main/.claude/commands/portaljs-connect-ckan.md) — th...

Details

Author
datopian
Repository
datopian/portaljs
Created
14 years ago
Last Updated
today
Language
TypeScript
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category