✔️ On page load, the search field is empty and no results are shown. When searching then clearing the search field, all results are shown. They should not.
✔️ keyboard shortcut ESC = "clear" to remove all text and results
✔️ ESC then a valid letter => nothing is found when there should be some results
✔️ Handle any and all fields in data.js dynamically
✔️ Specify fields type in data.js and display their value accordingly
✔️ Show a full page of results when no search string is entered
✔️ Limit number of results shown at once (+ pagination)
✔️ Add possibility to add boost to fields
✔️ Make the page mobile friendly (for now the font is too small and everything is packed on the left)
- https://search.google.com/test/mobile-friendly => Page is mobile friendly
❌ Minify main js file ? No, the size is ridiculous compared to the minified react-dom js (9 kB vs 116 kB)
✔️ Rename project: simple search page for custom data
✔️ Search bar always visible even when scrolling
✔️ Clear button in/over the input (an "X")
✔️ Search bar too wide on mobile
❌ Remove React => Vue.js, Svelte ? No framework ? (and bring back minify subject...) => no need for now
✔️ Dark theme
✔️ Test with more data => 760 elements
✔️ Make list elements unwrappable => the colored square and text must stay on the same line
✔️ Fetch data from elsewhere => e.g. urls on github
✔️ Take boost param into account
✔️ Make possible to switch between datasets
- already possible by changing the url https://stephgbzh.github.io/customta/?json=https://github.com/StephGbzh/customta/raw/master/data/search_engines.json
- let's keep the options/settings at a minimum, none as of now being ideal
✔️ Filter, scroll down, load more, scroll down again then modify the search => the list is reduced back to the default results count but we should also scroll back up to the top of the page
🔲 Make possible to load local json files
- not through
file:///
urls => forbidden by browsers - file picker window
🔲 Handle faulty json with an error message below the top bar
🔲 Default page should explain how to provide data as a json url in the location bar
🔲 Switch theme light <-> dark
🔲 Test with even more data => tens of thousands elements and files > 10 MB
🔲 Order by fields: numeric, alphanumeric