Four steps, and you have an app where people register, log in, reset their password and invite their team. Here they are, before anything else.
The four steps
1. Create a free service. Sign up at ulabase.com and create a service. Its address is on the Connect page, and looks like https://c0ffee.ulabase.app. The six characters before the first dot are the service id.
2. Get the starter for your framework.
git clone https://github.com/ulabase/starter-react.git
cd starter-react && npm install
3. Tell it where your service is. In src/environments/environment.ts:
apiUrl: 'https://c0ffee.ulabase.app',
4. Set the service up and run. The starter comes with a setup file, ulabase.setup.ts: one command reads it and configures the service to match, with the accounts, the sign-up pages and the address the app is served from.
npm install -g ulabase
ulabase login # asks for a personal access token: create one from your profile on ulabase.com
ulabase setup --srv c0ffee # your service id
npm run dev
Open the address npm run dev prints, and register the first user.
With Angular the steps are the same: clone ulabase/starter-ng, put the address in src/environments/environment.dev.ts, and run ng serve in place of npm run dev.

What is running now
- Registration with email verification
- Login and logout, with the session kept across reloads
- Password reset by email
- Team invitations, for new and existing users
- Switching team, for a user who belongs to more than one
- Profile: name, surname, password change
- Protected routes: a page that needs a user is never shown without one
- A MongoDB backend with REST, GraphQL and WebSocket APIs
None of this is a demo. It is the authentication that runs Ulabase itself, in a library and a starter app for your framework.
The starters
- React: context, hooks, guard components, and Next.js when you need server rendering.
- Angular: signals, route guards, an HTTP interceptor.
- Ecommerce: the React starter with a catalogue, a cart and Stripe checkout. Its setup also needs your Stripe test keys: the README says where.
- Vue: the adapter is built and tested. The starter comes next.
The same backend and the same flows in each.
Then build your app
The setup file is yours: it is in your repository, and ulabase setup applies it again whenever you change it. Add your collections and your permissions to it, and write the part of the app that is only yours.
Ready to Build Something Great?
Focus on what makes your app unique. Your backend is ready in minutes. Start with our free tier - no credit card required.