Compare — Pyxle vs the field

Real React. Pure Python.
No seam.

The industry spent a decade splitting the frontend from the backend — then the next one gluing it back. Server components, server actions, type generators, BFF layers: it’s all the seam, fighting itself. Pyxle was built without one — every stack is converging on where it already is.

one language you know · one file per feature · one service to deploy · shipping since v0.1, a release most weeks

01The set

The only column that’s all the way green.

Every stack is great at something. Pyxle is the only one great at all of it at once — the full React ecosystem, real Python on the server, one file, one deploy, and an AI-native surface none of the others ship.

Pyxleone fileNext + FastAPItwo servicesReflexpython-onlyDjangotemplates
Real React — npm-install anythingthe whole ecosystem, no wrapper
Server logic in Python@server loaders, @action mutations
One service, one deployno CORS, no second runtime
No API contract to hand-keepthe loader’s return is the props
Streaming SSR on React 19<Suspense>, shell-first
One file per featureloader, mutation, UI — colocated
AI-native surfaceAGENTS.md scaffold · every page as Markdown · llms.txt

full partial or wrapped not built inEach mark is defensible against that framework’s own docs. “Next + FastAPI” is the two-service stack Pyxle replaces — Next’s App Router collapses part of this in JavaScript, not Python.

02 — The tax

The old stack makes your data wear six costumes.

Follow one field — a search notes list — from the database to your component. In a split stack it is re-typed, re-serialized, and re-validated at every border it crosses. In Pyxle the loader’s return value is the props. Watch the line that finishes first.

Next.js + FastAPIa schema, a generated client, and a contract two runtimes keep by hand
6 representations3 places to drift
Reflexthe field crosses wearing the wrapper’s costume
3 representations1 wrapper to cross
Djangoshort — until you want a real component model
3 representationstypes end at the template
Pyxlethe loader’s return value is the component’s props
1 representation0 places to drift

Fig. 1 — chain of custody for notes. Station names are each framework’s own (types.gen.ts is the conventional name for the client types openapi-typescript generates; rx.State is Reflex’s; context is Django’s). The lines animate at one speed — a longer line has more stations to cross, not a slower clock.

03The proof

One costume. And it’s fast.

The short seam isn’t just cleaner — it’s cheaper at runtime. Real bytes off a real build, then the numbers, wins first.

GET /search?q=in — the whole document2,020 bytes
<h1>3<!-- --> notes match <!-- -->in<!-- --></h1>
<ul><li>Kerning the long dash</li>
    <li>Ochre ink, mixing notes</li>
    <li>On margins and measure</li></ul>
<script id="__PYXLE_PROPS__" type="application/json">
  {"data":{"q":"in","notes":[{"id":2,"title":"Kerning the long dash"},
   {"id":3,"title":"Ochre ink, mixing notes"},
   {"id":4,"title":"On margins and measure"}],"total":3}}
</script>
<link rel="modulepreload" href="…/search-CXnHMteq.js" />
  x-request-id: 256151ee6c574687bd04dc4cdeb0c769
Fig. 2 — the entire response. The field arrives still wearing its only costume: props, shipped once as inert JSON.
the split, proven
$ grep -c 'find_notes\|remember\|SavedSearch' \
    dist/assets/search-*.js
0
Fig. 3 — the loader’s server code, grepped for in the built client chunk. Absent by construction. The page’s own chunk: 2.6 KB / 1.3 KB gzip.
~2×
faster dynamic SSR than Next.js, per core
2–3×
fewer bytes for the same DOM — no hydration blob
1.31×
FastAPI’s throughput on database-query pages

Pyxle matches FastAPI on trivial endpoints and pulls ahead on real database work; one flag scales it near-linearly across every core. Raw-JSON microbenchmarks belong to Node routers like Hono — Pyxle is a full framework that renders React and runs your Python, and it’s still five figures per core. Zero errors under load · 2,500+ tests · 95% coverage gate. Every number, the hardware, and the losses: /benchmarks →

04Where this goes

This is the floor, not the ceiling.

Pyxle is opinionated on purpose — and honest about it. If you’ll never write a line of JavaScript, use Reflex. If you need Django’s admin, use Django. For everyone building a real React product on a Python brain, Pyxle already does more, in less.

Shipped in its first year

streaming SSR · realtime & WebSockets · Pydantic-validated actions · caching, SSG & ISR · observability · background work · image optimization · multi-worker serving · Markdown-native pages.

Next

Pyxle Cloud — push a Pyxle app and skip the server story entirely, with AI scaffolding in the mix.

In development. The one file becomes one command. See the whole trajectory on the roadmap — the newsletter hears it first.

Measured, not marketed.