ZevAuth Docs
Sign up

Getting started

Development and production

Two environments, deliberately unlike each other.

Every project starts with a development environment. You create production when you are ready to have real users.

They share nothing: separate users, separate keys, separate signing keys, separate organizations. A user who signs up in development does not exist in production.

What development does differently

Email is captured, not delivered. Sign-up confirmations, magic links and password resets are stored and shown in the console’s Sandbox instead of being sent. You can build and test a whole sign-up flow without an inbox, and without emailing a real person by accident during a seeding script.

Limits are lower. Development caps the number of users, which keeps a runaway test loop from filling a table you will never look at again.

The ZevAuth badge always shows. “Secured by ZevAuth” cannot be removed in development on any plan, so you never design against a screen that production will not give you.

Going live

Production requires a verified domain, because a publishable key is locked to it. The console walks you through the DNS records and tells you what is outstanding.

Once production exists, the two run side by side forever. You do not migrate between them, and you do not promote one to the other.

Updated at, Friday, August 28, 2026