I'm going to go a bit more broad with answering that kandyman did.
In general, these are called IMEs. This is software you use to actually translate what is commonly seen as RomanjiRomaji into actual Hiragana, Katakana or Kanji.
I won't make any recommendations since that's not really my intention here, but I will say this:
Using an IME does not mean you're now able to proficiently type Japanese.
Converting between Kanji, Hiragana and Katakana is a many-to-many match, and while most common phrases and expressions may be filled in, you have to know and understand the context of what characters are actually being displayed on-screen. Otherwise, what you're typing will be confusing or indiscernible to someone else.
It's the difference between typing 間に合いそう (let's make it on time) or マニアイソ (mania).