I don't think there is a single place for this This heavily depends on the area of the software you develop. If you for instance create software for navigation aspects for gliders doing a winch launch a general site won't give you many contributors, but you have to go into the glider community and find developers there.

The best way is to get users in the area the software is for. Once you have users they will have ideas. And the more users you have, the more likely it gets that some of them are developers and look into it and try to improve it.

Starting a project with "strangers" from the Internet is hard. I tried that multiple times with people from different mailing lists and most of them failed since we didn't really cooperated well as we knew each other too little. In my experience it is better to have somebody bootstrap the project and then get contributors.

What helps in general is to have some documentation about the general architecture and where to look for. I sometimes look at software I'm using and extend it to fit my needs but have to spent quite sometime till I have the first working patch.

It's also useful to have English comments and identifiers, even if that isn't your native language as that's simply, unless you're writing code very specific to a a specific area. (a tax software for German taxes should use German wording etc.)