portaljs
PortalJS is an open-source framework for building data portals using AI-assisted scaffolding. It provides three core pages (Home, Catalog, Showcase) that connect to pluggable data backends like CKAN, GitHub, or static files, allowing teams to launch a working portal in minutes.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | datopian/portaljs |
| Owner | datopian |
| Primary language | TypeScript |
| License | MIT — OSI-approved |
| Stars | 2.3k |
| Forks | 333 |
| Open issues | 81 |
| Latest release | [email protected] (2026-06-18) |
| Last updated | 2026-07-08 |
| Source | https://github.com/datopian/portaljs |
What portaljs is
TypeScript/Next.js framework with agentic Claude Code skills for portal generation. Abstracts data access through a DataProvider interface supporting static files, Git LFS, CKAN, OpenMetadata, and DuckDB-queryable Parquet on object storage. Scaffolds plain, editable code with no vendor lock-in.
Get the portaljs source
Clone the repository and explore it locally.
git clone https://github.com/datopian/portaljs.gitcd portaljs# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Node 22+ required; scaffolding uses npm create and tiged for templating. Ensure Node version parity across team and CI/CD.
- AI skills (Claude Code) streamline setup but require Anthropic API access and Claude Code environment; not a pure offline workflow.
- Data backends (CKAN, object storage, DuckDB) introduce operational complexity. Cloudflare R2 is the recommended default, but S3-compatible alternatives are supported.
- The three-surface model (Home, Catalog, Showcase) is opinionated. Significant deviations from this layout require custom Next.js work.
- Security review needed for your chosen storage/compute stack; PortalJS itself is a UI framework and does not handle auth/encryption beyond what Next.js provides.
When to avoid it — and what to weigh
- Real-time, low-latency transactional systems — PortalJS is designed for data discovery and serving static/batch datasets. Not suitable for high-frequency updates or sub-second query requirements.
- Proprietary, complex data governance without CKAN/OpenMetadata — If your data governance model is bespoke and incompatible with supported backends, custom DataProvider implementation is required. Evaluate effort before committing.
- Minimal Node/TypeScript expertise in your team — While AI skills reduce hands-on coding, customization, debugging, and maintenance still require JavaScript/React/Next.js competency. Pure no-code it is not.
- Offline-first or client-side-only data portals — PortalJS assumes a server/backend; it does not support offline-first PWA architectures or browser-only rendering of large datasets.
License & commercial use
MIT License — permissive OSI-approved license. Allows commercial use, modification, and distribution without restriction, provided the license and copyright notice are included.
MIT is a permissive license. Commercial use is permitted. However, evaluate your data backend's license (e.g., CKAN if chosen) and any third-party dependencies separately. No support SLA is provided by the open-source project; Datopian offers commercial services separately.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Adequate |
| License clarity | Clear |
| Deployment complexity | Moderate |
| DEV.co fit | Good |
| Assessment confidence | High |
PortalJS is a Next.js-based UI framework. Security posture depends on: (1) your data backend (CKAN, object storage permissions, DuckDB query isolation), (2) Next.js version and dependencies (no audit data provided), (3) authentication/authorization layer (not built-in; user responsibility). Public data portals are lower-risk, but evaluate sensitive dataset exposure and API rate limiting separately. No security policy or CVE history provided in data.
Alternatives to consider
CKAN
Full-featured open-source data portal platform with built-in auth, publishing workflow, and plugin ecosystem. Heavier than PortalJS; better for large teams managing complex governance, but steeper operational overhead.
OpenDataSoft
SaaS data portal with strong out-of-the-box features (search, APIs, visualizations). Removes infrastructure burden but introduces vendor lock-in and recurring costs. Suitable if managed operations are prioritized.
Socrata
Enterprise SaaS platform widely used in government. Full-stack solution (hosting, auth, sharing). Higher cost and vendor lock-in; PortalJS is lighter and open-source alternative for teams wanting control.
Build on portaljs with DEV.co software developers
Start with `npm create portaljs@latest` or use Claude Code skills for guided setup. Own your code, choose your backend, scale on your terms.
Talk to DEV.coRelated open-source tools
Surfaced by semantic similarity across the DEV.co open-source index.
Related on DEV.co
Explore the category and the services that help you build with it.
portaljs FAQ
Can I use PortalJS without Claude Code AI skills?
What if I want to switch data backends later (e.g., static files to CKAN)?
Does PortalJS handle authentication or access control?
What is the cost of using PortalJS?
Software developers & web developers for hire
Need help beyond evaluating portaljs? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and mcp servers integrations — and maintain them long-term.
Launch Your Data Portal Today
Start with `npm create portaljs@latest` or use Claude Code skills for guided setup. Own your code, choose your backend, scale on your terms.