Hello Sayak,
Are the server and ui related to each other? If so, I would probably put the server
and ui in their own repo and the operator in its own.
But if you can't have 2 repos, I would probably go with your first option which
separates the items by directory. I've done this with other projects in the past (not
operators).
You mention that option 1 "doesn't feel right in a monorepo". What are you trying to
accomplish with a "monorepo"?
I agree with your sentiment about option 2, it does seem that the ui and server are
subcomponents of the operator which is not what you want.
Sincerely,
jesus