This paper describes a real-time speech recognition system for Ukrainian designed basically for text dictation purpose targeting moderate computation requirements. The research is focused on features which are specific particularly for Ukrainian. Given arguments confirm the necessity to distinguish stressed and unstressed vowels in the phoneme alphabet. Lexical stress irregularity implies expert involvement for stress assignment. To automate this procedure we propose a data-driven stress prediction algorithm that represents words as sequences of substrings. The formulated criteria that validates a substring sequence is based on a set of words with manually pointed stresses and a large text corpus. The described search algorithm finds one or more sequences with the best criteria. As a Slavonic language Ukrainian is highly inflective and tolerates relatively free word order. These features motivates transition from word- to class-based statistical language model. According to our experimental research, 4-gram class-based LM occupies less space and has promising prospectives. We describe a speech-to-texå web- service where the proposed techniques are used as well as several tools developed to visualize HMMs, to predict word stress, and to manage cluster-based language modeling.