Skip to content
SH-02FDetail F

JFP Taxis

Freelance team of 2

A family taxi firm's site, rewritten in 2026 on Next 16 with three locales at 452 keys in exact parity; four gates sit in front of the paid mail API.

Type
Transportation
Status
Live
The promise: door-to-door transport across Portugal and Spain
Fig. 01 — The promise: door-to-door transport across Portugal and Spain
Problem
A public quote form with no backend was an open door for spam.
Constraint
Every send through the mail API is paid for, and a family firm does not moderate a queue.
Decision
Four gates in front of the send — a honeypot, a minimum fill time, a Turnstile challenge and a per-IP hourly limit — so a bot is stopped before the mail API is ever called.
Outcome
Rewritten in 2026 on Next 16: three locales at 452 keys in exact parity, and the images cut from 6.8 MB to 1.1 MB in one commit.
A festival run: three airports, each at a fixed price
Fig. 02 — A festival run: three airports, each at a fixed price
The quote form: the Turnstile challenge that guards the send
Fig. 03 — The quote form: the Turnstile challenge that guards the send

Stack used

Next.js 16React 19TypeScriptTailwind CSS 4Framer Motionshadcn/uinext-intlResendCloudflare TurnstileVercel Analytics
Detail F

Legend — the marks on these sheets

SH-xx
Sheet number. Every drawing in a set carries one, and the set is read in that order.
ESC 1:20
Scale. One unit on the drawing stands for twenty on the thing drawn.
DETAIL A/B/C
Detail callout. A lettered part of a drawing, enlarged on a sheet of its own.
SECTION C-C
Section mark. The line a cut is taken along, lettered at both ends.
BH-01
Borehole log. What a trial hole found, recorded downward by depth.
EOB
End of borehole. The depth at which the log stops.
REV. 2026
Revision. The issue a sheet belongs to; a later revision supersedes it.
As-built register
A table of what was actually built, set against what was drawn.

Press ? to open or close. Escape closes.