How to make users choose at least one option in a list but allow additional selections
We know that radio button groups are used to limit user input to just one selection in a list of items, and that checkboxes are used to let users select from 0 to a set number of options from a list of items.
What is a commonly accepted design pattern to ensure that the user will select at least one item from the list, but can optionally select additional items. It doesn't seem to fall into the typical use cases for checkboxes, and using a dropdown list that has line items that can be checked or unchecked also doesn't seem to be very intuitive.
Is the best way to make this clear to the user to provide labels and guidance? Are there other UI elements or design strategies that work better?
This is the basic/ typical usage of checkboxes. I don't see the need for a select.
By definition, checkboxes are used to let a user select zero, one, or more options of a limited number of choices. To make the user choose at least one option, make the input required. It is not different if you use an input that has the type file or a select, it must be required to have at least a valid selection.
If the list is long, you can use a vertical scroll with a search in the list. The user could also add a custom topping if you need this option. Anyway, in this case, for me, checkboxes are the obvious solution.
Update: Of course, if the list is really big and if it is searchable, the lists with checkboxes hidden into a dropdown is a known solution. For multi-selecting in big lists, are also common similar solutions: dropdowns that user can both scroll through or search in, and display the items as pills in the input field. For your case, checkboxes are enough and offer the best user experience, in my opinion.