While producing too much overhead for small, short projects. we use OpenProject for more complex, longer projects, especially when multiple parties are involved.
I like the clean user interface and it's on-premises option. Open-source licensing is an extra plus.