Skip to content

Upgrading to 6.0

Pondoknusa 6.0.0 keeps TSX views. The compiler, helper tags, island DOM markers, and JSON error Content-Type change. Apps that compile on 5.1.x can fail view:cache or client hydration until you apply the steps below.

See the v6.0.0 release notes and changelog.

Before you upgrade

  1. Pin to the latest 5.x patch and run your test suite.
  2. Bump every @pondoknusa/* dependency to ^6.0.0 (monorepo packages release together).
  3. Inventory views for <__raw>, host onClick / onclick, and any CSS or JS that selects tyr-* or data-tyr-island.
diff
# package.json
- "@pondoknusa/core": "^5.1.0"
+ "@pondoknusa/core": "^6.0.0"

Views: Pondoknusa TSX dialect

@pondoknusa/views compiles .tsx with Oxc. HTML attribute names stay class and for. className / htmlFor still remap.

5.1.x6.0
<__raw>{html}</__raw><Raw html={html} />
onClick / onclick on host tagscompile error — put handlers in an <Island> plus registerIsland()
data-tyr-island, #tyr-hydration, <!--tyr-stream:…-->data-pn-island, #pn-hydration, <!--pn-stream:…-->

Import { view } from @pondoknusa/views/jsx and export default view(function render…) so the editor uses Pondoknusa JSX types. pondoknusa new writes types/pondoknusa-jsx.d.ts and a tsconfig with "jsx": "preserve". Run pondoknusa view:types for generated PascalCase tags.

Helper tags in 6.0: <Csrf />, <Method>, <Vite>, <Json>, <Lang>, <Once>, <Raw html={…} />, <Island>, <Stream>.

JSON errors

JSON error bodies still include message and status. The Content-Type is application/problem+json (RFC 9457) with code and resolution. Clients that require an exact application/json header must accept application/problem+json.

Accept: text/markdown returns a short markdown error that points at /llms.txt.

Agent-ready HTTP

registerHttpMiddleware() / prepareHttpServer() publish /robots.txt, /sitemap.xml, /llms.txt, /openapi.json, and /.well-known/api-catalog when the app has not registered those paths. HTML honours Accept: text/markdown with Vary: Accept.

pondoknusa new writes config/agent.ts. Set agent.enabled: false to opt out. See Agent-ready sites.

A reverse proxy that blocks GPTBot (Cloudflare Block AI Crawlers) still hides the origin from agents. The framework cannot override that.

Checklist

Earlier majors

6.0.0 shipped in September 2026. Stable APIs only break in major releases per STABILITY.md.

Released under the MIT License.