This is a super fast and responsive self-service UI for open source user management system Ory Kratos built in SvelteKit. The project uses Melt UI for creation of accessable and WAI-ARIA compliant components, and TailwindCSS for styling.
- Disabled flows from Kratos config are considered (e.g. not showing Sign Up option, if Kratos config has that flow disabled)
- Mobile support
- Dark mode
- All flows supported: login, logout, signup, recovery, verification, settings
- Tested self-service methods: password, webauthn, code, totp
- Error, success and info messages
- Languages other than English
This can be set at static/favicon.svg
for browser tab icon, and src/lib/Logo.svelte
for main logo shown above forms.
# Publicly available Kratos instance URL, without trailing slash
PUBLIC_KRATOS=http://localhost:4433
# Name of the organization/instance, used for page titles
PUBLIC_ORGANIZATION=My Org
# Links to the Terms of Service and Privacy Policy, used for registration page
PUBLIC_TERMS_OF_SERVICE=http://localhost/terms-of-service
PUBLIC_PRIVACY_POLICY=http://localhost/privacy-policy
You can use available Dockerfile to build containerized version of the self-service yourself.
There is also prebuilt image available at Docker Hub via karlisvagalis/kratos-selfservice:latest
or Github Docker Registry via ghcr.io/karlis-vagalis/kratos-selfservice:latest
.
PUBLIC_KRATOS
- Publicly available Kratos instance URL, without trailing slash
PUBLIC_ORGANIZATION
- Name of the organization/instance, used for page titles
PUBLIC_TERMS_OF_SERVICE
- Link to the Terms of Service
PUBLIC_PRIVACY_POLICY
- Link to the Privacy Policy