Janux
A fullstack TypeScript framework where a single component definition is projected three ways: a live UI for people, and typed MCP tools and resources for AI agents, so the human interface and the agent-facing tools cannot drift apart.
Janux is built for what it calls the Agentic Web, where people click through a UI while AI agents read, plan and act on the same pages through MCP clients, browser agents and embedded copilots. Normally making an app agent-operable means building the same validation, permissions and business logic twice, once in the UI and once as hand-written tool integrations that drift apart over time.
A Janux component is simultaneously a view, an agent-readable resource and a set of typed tools, generated from one definition. A human click and an agent tool call both enter the same pipeline, a guard check, schema validation, the handler, then an audit entry, so the contract cannot rot because it is generated from the code that renders the UI, and humans stay in the loop through visual feedback such as a chip per tool call and a highlight on the element being operated.
Built with TypeScript and Node.js. MIT licensed; under active development with breaking changes expected before its first public release.