MTG / freesound

The Freesound website
https://freesound.org
GNU Affero General Public License v3.0
317 stars 88 forks source link

Search "frontend" refactor #1756

Closed ffont closed 7 months ago

ffont commented 8 months ago

Issue(s) https://github.com/MTG/freesound/issues/1741

Description This PR includes a huge refactor of the search "frontend" code and provides a new way of defining options for the search page based on a SearchQueryProcessor and SearchOption classes which are somehow inspired by the way Django forms work.

This PR also includes refactoring of the search clustering feature which was never tested with the new UI. Once merged, the clustering feature will be available only for users with special permissions.

Deployment steps: The clustering feature works as another async task for the celery workers, so these will need to be re-deployed (and the new clustering queue added to their deployment configuration file). Also static files will need to be rebuilt. Other than that it should be like a normal deployment :)