The more complex is getting your SEARCH-ENGINE → the more i would suggest you to do it by code (like already suggested by Dan_Shur).
If you want to generate it by code, you can start here…
You can implement all possible and available elements into your own created SEARCHENGINE…
- Inputs
- Dropdowns
- Selection-Tags
- Radio-Buttons
- Checkboxes and so on and so on…