datopian/portaljs
🌀 AI-native framework for building data portals. Scaffold a full portal from a brief and load datasets in minutes with agentic skills — any backend (CKAN, GitHub, Frictionless).
해결하는 문제
PortalJS는 AI 네이티브 프레임워크를 제공하여 데이터 포털을 구축합니다. 데이터 인프라(스토리지, 컴퓨팅, 카탈로그) 선택과 프런트엔드와 데이터를 연결하는 수작업을 없애 팀이 요구사항 정의에서 바로 작동하는 포털로 빠르게 전환할 수 있게 하며, 독점 플랫폼에 종속되지 않도록 합니다.
작동 방식
PortalJS는 Claude Code 전용으로 설계된 에이전트 스킬 프레임워크를 사용해 사용자를 아키텍처 설계와 구축 과정으로 안내합니다. 주요 구성 요소는 다음 세 가지입니다.
- 에이전트 스킬:
/portaljs-architect,/portaljs-new-portal등 슬래시 명령어 집합으로 최적 인프라 스택을 조언하고 순수한 Next.js 코드를 스캐폴딩합니다. - Three Surfaces: Home 페이지, Catalog(발견용), Showcase(개별 데이터셋 탐색용)로 구성된 표준 레이아웃.
- DataProvider 계약: 플러그인 가능한 백엔드 시스템으로, 정적 파일, CKAN, OpenMetadata, 혹은 "오픈 레이크하우스"(Git + R2 + Parquet + DuckDB) 사이를 프런트엔드 코드를 변경하지 않고 전환할 수 있습니다.
대상
전문적이고 확장 가능한 데이터 포털을 구축해 데이터셋을 공유·탐색하려는 데이터 팀 및 조직, 특히 오픈소스 도구와 서버리스 아키텍처(예: Cloudflare R2/Workers)를 선호하는 사용자에게 적합합니다.
주요 특징
- AI 기반 아키텍처: 사용자의 구체적인 데이터 요구에 따라 스토리지와 컴퓨팅 스택을 추천하는 어드바이저 스킬 포함.
- 잠금 없음: 순수하고 편집 가능한 Next.js 코드를 생성해 모든 권한을 사용자에게 귀속.
- 오픈 레이크하우스 기본: 기존의 무거운 데이터 웨어하우스 대신 Parquet와 DuckDB를 활용한 현대적인 서버리스 스택을 권장.
- 플러그인 가능한 백엔드: 단일 DataProvider 계약을 통해 CKAN, GitHub, Frictionless Data Packages 등 다양한 소스를 지원.
- 광범위한 툴링: 데이터셋 추가, 차트/지도 생성, 스키마 정의, ArcGIS Hub 또는 Socrata에서 데이터 마이그레이션을 위한 전문 스킬 제공.