diff --git a/contrib/mobile/iOS/Onelab/Model.h b/contrib/mobile/iOS/Onelab/Model.h
index 101e430c0dcbd0617fec619eaf1527a6109652cd..a427a5db787f16707c2e71487c2e12a62036acce 100644
--- a/contrib/mobile/iOS/Onelab/Model.h
+++ b/contrib/mobile/iOS/Onelab/Model.h
@@ -18,4 +18,6 @@
 -(UIImage *) getPreview;
 -(void) setPreview:(NSString *)path;
 -(void) setUrl:(NSString *)url;
+-(NSComparisonResult)compare:(Model *)p;
+
 @end
diff --git a/contrib/mobile/iOS/Onelab/Model.mm b/contrib/mobile/iOS/Onelab/Model.mm
index c34b3a8c4fd14be978acf69c43a537abfaee9f68..dd77734ce75eb09a9533bbb8c4c57b3f1abd533b 100644
--- a/contrib/mobile/iOS/Onelab/Model.mm
+++ b/contrib/mobile/iOS/Onelab/Model.mm
@@ -73,4 +73,9 @@
   _url = [NSURL URLWithString:url];
 }
 
+-(NSComparisonResult) compare:(Model *)p
+{
+  return [[self getName] compare:[p getName]];
+}
+
 @end
diff --git a/contrib/mobile/iOS/Onelab/ModelListController.mm b/contrib/mobile/iOS/Onelab/ModelListController.mm
index d9063a2049fb02555a1e5fcfae9875d12982e8a4..63ed5dcafbad76263473f53df7382c8dd7ce0647 100644
--- a/contrib/mobile/iOS/Onelab/ModelListController.mm
+++ b/contrib/mobile/iOS/Onelab/ModelListController.mm
@@ -29,6 +29,7 @@
       }
     }
   }
+  [models sortUsingSelector:@selector(compare:)];
 
   UIBarButtonItem *about = [[UIBarButtonItem alloc] initWithTitle:@"About" style:UIBarButtonItemStyleBordered target:self action:@selector(showAbout)];
   [self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects: about, nil]];
@@ -60,6 +61,7 @@
       i--;
     }
   }
+  [models sortUsingSelector:@selector(compare:)];
   [self.tableView reloadData];
   [self.refreshControl endRefreshing];
 }