--- title: "Replacing the sign up UI for Web" slug: "dpo-replace-web-app-sdk-ui-for-sign-up" updated: 2026-10-27T20:13:31Z published: 2026-10-27T20:13:31Z canonical: "docs.onespan.com/dpo-replace-web-app-sdk-ui-for-sign-up" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Replacing the sign up UI for Web The App SDK provides a default UI for the Sign Up form and registration confirmation implemented as view objects. ![](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/Screenshot 2026-02-24 at 1.45.44 PM.png?sv=2026-02-06&spr=https&st=2026-10-29T02%3A14%3A21Z&se=2026-10-29T03%3A14%3A21Z&sr=c&sp=r&sig=jYaEvSlOzWYWsJH59mRdz4SsFWgSHuOOMk1qIXdefV8%3D) ![](https://cdn.document360.io/038f59a7-abd0-4c14-9de7-3434d28b49fd/Images/Documentation/Screenshot 2026-02-24 at 1.47.05 PM.png?sv=2026-02-06&spr=https&st=2026-10-29T02%3A14%3A21Z&se=2026-10-29T03%3A14%3A21Z&sr=c&sp=r&sig=jYaEvSlOzWYWsJH59mRdz4SsFWgSHuOOMk1qIXdefV8%3D) To replace the default UI: **Step 1:** Implement a custom View that implements the BaseSignUpView and ISignUpLiveData interfaces. **Step 2:** Implement a custom UI factory as a subclass of SignUpUIFactory. Define its createView() method to return an instance of the custom View you implemented in Step 1. **Step 3:** During initialization of your app, call SignUpUIFactory.setInstance() to provide an instance of your custom implementation of the SignUpUIFactory. When the user begins the Sign Up flow, the App SDK calls the createView() method of your custom SignUpUIFactory implementation to obtain the instance of your custom View. When your view is initialized, it calls SignUpController.onRefresh(). The SignUpController then calls the getSignUpData() and confirmMethodRegistration() methods of your custom ISignUpLiveData implementation. Refer to the [Client API Docs](/dpoa/docs/s3suite94-web-client-api-docs-1) for the SignUpController and SignUpUIFactory classes and the BaseSignUpView and ISignUpLiveData interfaces for more details. #### Working examples in Tutorial web app - Refer to the SampleSignUpUIFactory and SampleSignUpView classes in the file js/samples.js for implementation. - Refer to initialize() in js/Controller.js for usage.