python pyenchant library (and so c enchant) allows to check whether a word is spelled correctly http://pythonhosted.org/pyenchant/api/enchant.html
import enchant
enchant.Dict("en_US").check("house")
where does the US dictionary come from? does it contain also proper nouns, such as Microsoft or John? is it possible to check if a given word is a noun (but not a proper noun) and spelled correctly? so, something like:
check("house") -> true
check("houses") -> true
check("Microsoft") -> false
check("keiujr") -> false