--- title: "Creating a Custom Application Page Using Form Widgets" slug: "custom-application-widgets" description: "Enhance Slate applications with custom widgets for data collection, offering customizable fields, conditional logic, and easy edits via Form Builder." tags: ["Widgets", "Custom Application Pages", "Slate-Hosted Application"] updated: 2026-09-03T21:03:40Z published: 2026-09-03T21:03:40Z canonical: "knowledge.technolutions.net/custom-application-widgets" --- > ## Documentation Index > Fetch the complete documentation index at: https://knowledge.technolutions.net/llms.txt > Use this file to discover all available pages before exploring further. # Creating a Custom Application Page Using Form Widgets > [!NOTE] > 📚 Part of the series **Application Building Phase II:** [**The Slate-hosted Application**](/v1/docs/introduction-to-the-slate-hosted-application) ## What is a form widget in the Slate-hosted Application? In the Slate-hosted Application, **form widgets** collect information about schools, jobs, activities, interests, and other repeatable items. A **form widget** is a form created in the [Forms tool](/v1/docs/forms-overview) with a **widget** scope and embedded in an application page. ## How form widgets work When an applicant selects the form widget’s **Add** link, a pop-up opens for them to enter information about the item. Each time the applicant completes and saves the pop-up, Slate creates a new entry, displays it in the form widget on the application page, and saves it to the individual’s record. ## School Widget example The **School History** page of the application provides a common example: - The applicant selects **Add Institution**. - A pop-up prompts the applicant for details such as school name, CEEB code, address, and level of study. - The pop-up is a **form widget** that uses the **School Widget** scope. - The **Widget Table** option in the form palette embeds the widget on the **School History** page. Slate stores each institution that the applicant adds as a separate record in the school table associated with the application. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Application widget.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) ## Application pages that use form widgets A database provisioned from an [admissions model](/v1/docs/customizing-your-turnkey-4-year-graduate-admissions-database) can include a **Slate-Hosted Application Pages** folder in the Forms tool. The folder can contain forms for entire application pages and widgets embedded in those pages, including: - [Activities/Interests](/v1/docs/custom-interest-page) - [Courses](/v1/docs/custom-school-history-page) - [Employment History](/v1/docs/custom-employment-history-page) - [Recommendations](/v1/docs/reference-overview-getting-started) - [Relationships](/v1/docs/custom-relationship-page) - [School Reports](/v1/docs/external-school-report-page) - [School History](/v1/docs/custom-school-history-page) - [Sports](/v1/docs/custom-sport-page) If these forms aren’t available, import them by using the Suitcase IDs in the application-page articles in this section. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Application form widgets.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) ## When to use application form widgets Consider the following when you create or modify form widgets for an application: - **Supported forms:** Except for the **Entity Widget**, form widget scopes are designed for use only on **Slate-Hosted Application**-scoped forms, such as **Application Page** or **Slate-Hosted Application** forms. These widgets aren’t designed for use on forms outside the Slate-hosted Application, including **Application Creation** forms. - **Field presentation:** Label, order, and conditionally display standard and custom fields as needed. - **Response limit:** An applicant can add up to 99 responses in an application form widget. Use a form widget when you expect multiple submissions. - **One widget per type:** Use only one application form widget of each type per application. A widget displays all records saved in the corresponding data table on the person record. For example, school information entered in a widget for high schools also appears in a separate widget for colleges and universities. Use one widget to collect all school data in the application. - **Required fields:** Unlike [application-page-scoped forms](https://knowledge.technolutions.net/docs/custom-application-pages-overview), fields in a custom widget on a custom application page can be configured as **Required**, and Slate enforces those requirements in the application. ## Create the widget-scoped form When you [create a form](/v1/docs/creating-a-form), select a **scope** for the data that the form collects. The list of scopes includes a **Page Construction Widgets** group. Each scope in the group corresponds to a type of form widget. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Page construction widget scopes.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) For example, select **School Widget** to map data that applicants enter to system school fields. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Maps to system school fields.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) Create one widget-scoped form for each type of widget that the application page needs. ## Embed the widgets in an application-page form Create a **Slate-Hosted Application Page**-scoped form to embed the widgets. In this example, the form is named *Education History*. Add a [Widget Table](/v1/docs/form-palette#widget-table) from the form palette. In the **Widget Form** list, select the widget-scoped form that you created. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Add widget table to slate-hosted-application-scoped form.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) Repeat this process for each widget-scoped form from the previous section. Use only one form widget of each type per application. ## Collect widget data Map the fields in each application form widget to the appropriate table on the person record’s **Profile** tab. In this example, map the fields to [**Schools**](/v1/docs/person-record-profile-tab#schools). ## Display widget data in the application To display data entered on an application page, configure **Custom List Fields**. These fields control the data points that applicants see after they save a form widget entry. Add exports and filters as needed. To configure these fields, open the form widget, select **Edit Properties**, and then select the **General** tab. ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Screenshot 2026-01-20 at 12.43.20 PM.png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Screenshot 2026-01-20 at 12.41.30 PM(2).png?sv=2026-02-06&spr=https&st=2026-10-12T11%3A50%3A37Z&se=2026-10-12T12%3A50%3A37Z&sr=c&sp=r&sig=zltWTSw9vsvbbEj9UIEb2f0VYu91UoDe%2FbKHah3TwVA%3D) ## Display form widget data in the Reader Form widgets do not create form responses. Slate saves the data to system fields, where the data remains available to queries. [Auto PDFs](/v1/docs/auto-pdf), including those in the Reader, do not render this data. Use a [Data Container](https://knowledge.technolutions.net/docs/data-containers), [Custom PDF](https://knowledge.technolutions.net/docs/custom-pdf), or [Reader portal](https://knowledge.technolutions.net/docs/portals-in-reader) to display a form widget’s custom fields in the Reader.