This storefront demonstrates a more realistic integration: product browsing and cart activity are normal pages, while Turnstile only appears on protected flows like Checkout and Sign up.
For this demo, sign up uses an email-code style flow. The code is generated server-side and shown in-app for demonstration instead of being sent by email.
This demo now uses two real environments: baseline.klym.net for the unprotected flow and turnstile.klym.net for the protected flow.
I can’t help bypass Turnstile, but for your own demo you can validate enforcement by sending requests with missing, fake, replayed, or wrong-action tokens to /api/sensitive-action.
curl -X POST "https://turnstile.klym.net/api/sensitive-action" \
-H "content-type: application/json" \
--data '{
"flowType":"checkout",
"email":"shopper@example.com",
"businessAction":"checkout-place-order"
}'