Welcome to forum @zylootino
What you're describing should definitely be achievable with a custom interface. It will require some amount of front-end coding on your part, though. Good news is that it Prodigy UI was designed to be extendable. It exposes a number of app events and CSS classes for easier modification of the existing elements and you can specify custom HTML, CS and JS including new events to define custom interfaces.
You can even load remote JavaScript and CSS files in case you'd like to use an external front-end library in the project.
Your interface could consist of two view_id stacked in a block:
- html interface for reranking (this post discusses possible solutions, including drag-and-drop option: Ranking & Ordering texts with Prodigy - #2 by ines).
text_input
interface were users could add a string. The validation of the input can be implemented on the recipe level viavalidate_answer
callback
As for removing a string, you could perhaps define buttons as part of 1) html interface that would be linked to a custom back-end callback to remove the string from the final annotation via custom events.. Or, assuming the strings are numbered, add another text_input
field to enter the number of the string to discard.
I really recommend browsing through our docs on custom interfaces to get and idea of what's possible and the complexity involved.