User defined fields

I want to allow the user to define fields on an app. For example, in cases where the design does handle a data requirement, I would like the user to be able, at setup, to create a field, with say label “My Birthday”, and have the field entered each time the app is run.
I would like to create several fixed amounts of these fields, for dates and text and integer values.
Has anyone done this?