move autocomplete generation into app