code: def save_json(self, frames):
          
          if self.json_save_path is None: return
          path = os.path.join(self.json_save_path, '%s.json' % self.id)
          if not os.path.isdir(self.json_save_path):
              os.mkdir(self.json_save_path)
          with open(path, 'w') as f:
              json.dump(frames, f)
          self.json_data = frames
docs: Saves frames data into a json file at the
          specified json_path, named with the widget uuid.