Tooluck logoTooluck
SKILL.md

portaljs-deploy

Agent skill fromdatopian/portaljs

Deploy a PortalJS portal to PortalJS Arc — Datopian-managed static hosting on Cloudflare. Builds a static export, uploads it, and returns a live SLUG.arc.portaljs.com URL. One command, one target. Use when a portal is ready to publish or redeploy to a live URL.

How to install portaljs-deploy

install portaljs-deploy
# install the portaljs pack with the skills CLI
npx skills add datopian/portaljs

# or add only this skill to Claude Code: copy the folder

skills/portaljs-deploy/

# into

~/.claude/skills/portaljs-deploy/ (all projects)

.claude/skills/portaljs-deploy/ (one project)

skills/portaljs-deploy/SKILL.md

MITFull file
1# PortalJS — Deploy
2
3## Overview
4
5Publish an existing PortalJS portal to **PortalJS Arc** — Datopian's managed static
6hosting on Cloudflare. Build a static export, upload it to the Arc API, and print a live
7`https://SLUG.arc.portaljs.com` URL. Re-running redeploys the same portal (idempotent on
8the slug). This is a single-target skill — it deploys to Arc only. For self-hosting, run
9`npm run build` and upload `out/` to any static host; no skill required for that path.
10Arc serves static exports only — SSR is not hosted on Arc yet.
11
12## Prerequisites
13
14- A PortalJS portal directory with a `package.json` that lists `next` as a dependency.
15- Node 18+ and npm on PATH (the Arc device-login flow uses Node's global `fetch`).
16- `curl` and `tar` available for packaging and upload.
17- A PortalJS Arc token — read from `PORTALJS_TOKEN`, or `~/.portaljs/credentials`
18 (`{"token":"…"}`). If neither exists, the skill signs in on demand via a device-code
19 flow; no manual token copying required.
20- If the portal stores large data in Git LFS/R2, do not run `git lfs pull` before
21 deploying — large datasets are served from Cloudflare R2 via absolute URLs in
22 `datasets.json`, not copied into the export.
23
24## Instructions
25
26The canonical, full step-by-step workflow is
27[`.claude/commands/portaljs-deploy.md`](https://github.com/datopian/portaljs/blob/main/.claude/commands/portaljs-deploy.md) — the
28single source of truth. Read and follow it when executing. Summary:
29…

Excerpt shown under the repository's MIT license.

More skills in portaljs

Keep exploring

Similar skill repositories

thedotmack /

claude-mem
116k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

CCCXGHGM+135 skills

cathrynlavery /

diagram-design
66k

Editorial diagram design for Claude Code, Codex, GitHub Copilot, Cursor, Factory Droid, Qoder, and Pi. 45 diagram types. Self-contained HTML + SVG. No shadows. No Mermaid slop.

CCCXCUGH1 skill

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates