I feel like I've written this program four times, though maybe making it web-based will make it useful for other people. It's pretty straightforward except it uses a longest-match rule so "kh" produces a different character than "k".
I wrote this one for Meena, who then wrote me a short email in Arabic in return. I can read about half of it.