Repeating panel to collect new information?

This is exactly the right way to do it. In fact, I would probably create one or more named dummy objects so that I can easily refer to them later. Something like this, perhaps:

  def __init__(self, **properties):
    self.init_components(**properties)
  
    # When the form is created, populate the RepeatingPanel
    self.data = [ ...your actual data... ]
    self.new_item = {"foo": "", "bar": ""}
  
    self.repeating_panel_1.items = self.data + [self.new_item]
  
  def save_new_item_click (self, **event_args):
    # When the "Save new item" button is clicked, 
    # do something to store the new data, and refresh the list.
  
    # May want to actually save self.new_item somewhere.
    # For now, just add it to self.data.
    self.data += [self.new_item]
  
    # Create a new blank item for the end of the list, and 
    # repopulate the RepeatingPanel.
    self.new_item = {"foo": "", "bar": ""}
    self.repeating_panel_1.items = self.data + [self.new_item]      

Hope that helps!