AI Integration
PulsePoint is AI-native by construction: its templates are plain HTML and its scripts are native JavaScript — the two languages AI models have seen the most of. No JSX dialect, no compiler magic, no proprietary DSL to hallucinate around.
Why plain HTML matters for AI
An AI assistant generating React must juggle JSX transforms, imports, build configs and a component tree that lives outside the document. Generating PulsePoint is generating a web page: markup any model already writes correctly, plus a small closed API. The failure modes shrink from "misconfigured toolchain" to "used a directive that doesn't exist" — and the closed lists in Directives & Public API are designed to eliminate exactly that.
llms.md — the single context file
llms.md is the machine-consumable
version of these docs: the complete directive surface, every pp.* hook,
the non-JSX rules, and the full backend wire contract (RPC headers, CSRF,
streaming, sockets, redirects) with a reference implementation in pseudo-code.
It is self-contained — an agent needs no other page to implement PulsePoint
in a new backend.
- Fetchable at
/llms.mdon this site — point a browsing-capable agent at the URL. - Or download it and commit it into your repo (e.g.
docs/llms.md) so your coding assistant always has it in context.
A prompt that works
Read https://pulsepoint.tsnc.tech/llms.md, then integrate PulsePoint v2
into this project:
1. Serve pp-reactive-v2.min.js, import ComponentInit, and call PP.bootstrap()
once in the base layout.
2. Wrap every reactive root in <template pp-component="unique_id">.
3. Add the RPC middleware following the wire contract in the file.
4. Convert the products page into a pp-component with server-side search
through pp.rpc("searchProducts").
Follow the closed directive list exactly — no JSX, no invented directives.
Teach your repo's standing instructions
For agents that read repository instruction files (AGENTS.md,
CLAUDE.md, Copilot instructions), add a short standing rule and let
llms.md carry the details:
# In your repo's AGENTS.md / CLAUDE.md / copilot instructions:
## Frontend reactivity
This project uses PulsePoint v2 (public/js/pp-reactive-v2.min.js).
Read docs/llms.md before writing any template or component script.
Key rules:
- Templates are plain HTML. Never generate JSX, className, or pp-if.
- Conditionals: hidden="{!cond}". Lists: <template pp-for> + key="{...}".
- Always quote brace attributes: class="{expr}".
- Server functions are called with pp.rpc("name", data) and registered
in the route's RPC registry.
What to verify in AI-generated PulsePoint code
- Delete every
{}mentally — the template must still be valid HTML. - No
pp-if/pp-show/className/onClick/{list.map(...)}— those are the classic React reflexes. - Brace attributes quoted,
pp-foronly on<template>, stablekeyon each row. - RPC functions registered in an explicit server-side registry, payloads filtered against declared parameters.