We decided to refactor our code as almost every new feature was implemented as a form of a hack. Would to get some tips on what design patterns would be useful to have in a web app. Things like Factory or Facade don't suit, I feel those are more suited for libraries and not a web app.
The gist of the web app is that it is a sort of translator that understands a user's queries and creates large queries to our DBs. It's a sort of search service. We have a ton of features and configuration that keep stepping on each other's functionalities and we have to add ugly hacks to overcome them. Hoping to have a good base that lets creating long complex chain of rules easier to modify.