Всем привет! Я хочу поделиться историей о том, как обычная пользовательская боль заставила меня открыть Android Studio и сделать свой первый серьезный проект.

Я очень люблю читать с телефона (особенно ранобэ, новеллы и книги в оригинале). Но в последнее время индустрия мобильных читалок свернула куда-то не туда. Открывая популярные приложения, я чувствовал себя пилотом Боинга: десятки перегруженных меню, всплывающие баннеры, просьбы купить Premium-подписку и интерфейсы прямиком из 2012 года.

Но моей главной болью был перевод. Когда ты читаешь книгу на английском и встречаешь незнакомое слово, тебе приходится выделять его, копировать, открывать Google Переводчик, вставлять, читать, возвращаться в книгу… Погружение в историю рушится моментально.
Есть, конечно, Circle to Search или читалки с функцией перевода, но мне они показались максимально неудобными

Я искал минималистичную читалку со встроенным удобным переводчиком. Не нашел. И решил написать её сам.

Как я изобретал велосипед (и почему отказался от WebView)

Поначалу казалось, что написать читалку легко: просто закидываешь HTML-текст книги в стандартный компонент браузера (WebView) и готово.

Но оказалось, что WebView жрет батарею, тормозит при перелистывании и не дает нормально кастомизировать текст. Поэтому я пошел по хардкору: написал свой собственный кастомный движок рендеринга текста. Он берет сырой текст из EPUB/FB2, сам измеряет каждую букву, нарезает текст на страницы прямо под размер вашего экрана и плавно их листает. Никаких подтормаживаний.

Так как я отказался от стандартных системных компонентов, мне пришлось писать логику выделения текста с нуля. Пришлось вручную высчитывать координаты пальца на экране, сопоставлять их с конкретной буквой в отрисованном абзаце и рисовать кастомные ползунки-«капельки» по краям.

Но самая главная проблема — это сохранение цитат. Если вы меняете размер шрифта или отступы, текст перестраивается. Чтобы выделения не съезжали и не ломались, я привязал их к абсолютному индексу символа (железобетонному якорю) от начала главы. Теперь вы можете как угодно крутить настройки дизайна — ваши цитаты и закладки всегда останутся ровно на том самом слове.

Что получилось в итоге? MRead

Я назвал приложение MRead (Minimal Reader). Это полностью локальная, бесплатная читалка без рекламы, созданная для того, чтобы вы оставались наедине с книгой.

Что внутри:

  • Умные онлайн-инструменты, то, ради чего всё затевалось. Выделяете слово или абзац — и прямо в книге всплывает окно с переводом на ваш язык. А если нужно узнать значение английского слова — там же работает толковый словарь (через API Wiktionary).

  • Поддержка форматов EPUB, FB2, FB2.ZIP, TXT. Движок сам вытаскивает обложки и иллюстрации из недр файлов.

  • Никакого визуального мусора. Светлая, темная и кремовая (моя любимая) темы.

  • Можно загружать свои любимые шрифты (.ttf / .otf), менять отступы, межстрочный интервал.

  • Приложение работает локально. У меня нет бэкенда, нет серверов, никто не собирает вашу статистику чтения.

Планы на будущее

Проект полностью бесплатный, писался на чистом энтузиазме. Если вам нравится концепция чистого чтения без компромиссов — буду рад, если вы его попробуете.

Скачать MRead можно здесь:

Я буду мониторить комментарии. Если найдете баги (а они наверняка есть, это же первый релиз) или у вас есть крутые идеи, что можно добавить — пишите, всё читаю, всё беру на карандаш!

Спасибо за внимание, и приятного чтения! ?

Комментарии (80)


  1. ganqqwerty
    08.06.2026 08:46

    Я думал что этот кейс покрыт в Jidoujisho или в других тулах от The Moe Way... если вы ранобешки читаете на японском, вы же уже присоединились к иммерсивным сообществам?


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Да, Jidoujisho и The Moe Way - это потрясающие инструменты, если вы целенаправленно и глубоко изучаете именно японский язык через иммерсивное чтение и связку с Anki (сам я, например, использую YomiNinja).

      Но, например, для изучения английского меня совершенно не устроили программы, которые я нашел (типа AlReader или FBReader) - просто не нравятся они мне визуально и по UX. Хотелось сделать что-то свое, максимально лаконичное и эстетичное.


      1. ganqqwerty
        08.06.2026 08:46

        да, правда, остальные языки сильно позади японского по тулингу


      1. 1sebasa
        08.06.2026 08:46

        День добрый. Только установил. Ещё не открыл. Я пару месяцев как учусь пользоваться с линуксом, а точнее с дистрибутивом mx linux . И вот думаю, есть ли у вас в мыслях портировать скажем для настольных пк ваше приложение?


  1. Void-Cowboy
    08.06.2026 08:46

    а разве FBReader не поддерживает плагины, которые можно какие угодно ему написать?

    В целом интересно, еше одна читалка но с фокусом для изучения языка (переводчиков бы побольше, как мин классику с яндекс/гуглом/дипл).

    Единое что - нет скринов и нормального описания, ни тут ни на гитхабе. Ставить себе незнакомый APK не все захотят только ради "посмотреть"


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Вы абсолютно правы насчет безопасности. Устанавливать сырые APK с гитхаба без исходников - это действительно оправданный риск, и я полностью разделяю вашу осторожность.

      Проект закрытый, и открывать его исходный код я в обозримом будущем не планирую - это мой личный пет-проект.

      Однако я не хочу, чтобы у пользователей были сомнения в безопасности приложения. Именно поэтому я выкладываю его на официальные площадки. MRead уже опубликован и доступен в RuStore, а также прямо сейчас проходит модерацию на AppGallery, Uptodown и Aptoide (к сожалению без Гугла). Если вы опасаетесь ставить APK напрямую, вы можете дождаться публикации и безопасно скачать читалку из любого удобного вам стора.


      1. grey_cardan
        08.06.2026 08:46

        А не могли бы вы развернуть мысль по поводу закрытости личного пет-проекта? Если проект полностью бесплатный и пишется на чистом энтузиазме, то от этого бы выиграли все, если бы код был открытым. По своему опыту понимаю, что открытый исходный код привлекает больше пользователей. Интересно понять мотивацию такого подхода.


        1. ZEDDTAY Автор
          08.06.2026 08:46

          Конечно, личное "не хочу" - это главная и законная причина.


        1. TkachenkoD
          08.06.2026 08:46

          согласен с автором. открытый код это дополнительная морока и область ответственности для пет-проекта


          1. grey_cardan
            08.06.2026 08:46

            А в чем заключается дополнительная морока и область ответственности? Просто как разработчик приложения с открытым кодом, 250к скачиваний в Google Play и 60к MAU я не совсем понимаю, что именно вы имеете в виду. Может все это время я сталкивался со сложностями, которые возникали именно из-за открытости, и делал лишнюю работу.


      1. Xenotester
        08.06.2026 08:46

        проект закрытый - жаль на f-droid не будет, но тут хозяин-барин и сап решает как ему лучше и/или банально удобнее


      1. RulenBagdasis
        08.06.2026 08:46

        Проект закрытый, и открывать его исходный код я в обозримом будущем не планирую - это мой личный пет-проект.

        А зачем обманывать людей, выкладывая пустые архивы, которые называются “Source code”?


        1. ColdPhoenix
          08.06.2026 08:46

          Их формирует сам github при формировании релиза. Это по сути архив коммита на котором сделан релиз.


    1. grey_cardan
      08.06.2026 08:46

      Все верно, полностью поддерживаю. Незнакомые APK с гитхабов и без исходников - это прямой путь к майнингу крипты на мобилке =). Автор бы лучше поделился ссылкой на ранний доступ в сторах (каких угодно).

      А так выглядит довольно приятно, и юзкейс переводов очень кстати! Вот только если проект полностью бесплатный и пишется на чистом энтузиазме, было бы здорово увидеть и исходники в итоге.


    1. Chetverovod
      08.06.2026 08:46

      FBREADER просит купить премиум чтобы pdf-смотреть.


      1. Revertis
        08.06.2026 08:46

        И они заслуживают этого! Я купил FBreader уже много лет назад, так как эта программа для меня просто must have.


      1. achekalin
        08.06.2026 08:46

        Но дает скачать премиум для тех, кто его купил ранее. Спасибо им за это!


        1. guility
          08.06.2026 08:46

          Как?

          Я уже пару лет живу без премиума, хотя купил ещё в далёком 2017 году.

          Мне говорит, что премиум недоступен для моего региона :-/


  1. stilet69
    08.06.2026 08:46

    Нужна кнопка выхода из приложения. А то не получается закрыть его.


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Спасибо за фидбек!

      Обязательно поправлю это в следующем обновлении.


  1. makornobbe
    08.06.2026 08:46

    Исходников не будет?


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Нет, открывать исходный код приложения я не планирую.


      1. Tishka17
        08.06.2026 08:46

        Тогда зачем вы вводите в заблуждение, давая ссылки на хостинг исходного кода (гитхаб)?


        1. ZEDDTAY Автор
          08.06.2026 08:46

          Я использую GitHub исключительно как удобную и надежную бесплатную площадку для публикации релизов.


          1. Tishka17
            08.06.2026 08:46

            Стало интересно, а код где храните?


            1. ZEDDTAY Автор
              08.06.2026 08:46

              В приватном репо на том же гитхабе :)


        1. ImagineTables
          08.06.2026 08:46

          Извините, но это вы сами себе напридумывали. Как и автор, «я использую GitHub исключительно как удобную и надежную бесплатную площадку для публикации релизов». В чём заблуждение, в которое мы вас вводим? В правилах площадки ничего нет про необходимость открывать исходники, иначе бы оттуда выгнали кучу проектов.

          Авторы WinRAR не открывают исходники, авторы Windows не открываются исходники, а автор читалки должен? Или он должен непременно возится с лендингом и хостингом для каждого проекта, изображая солидную корпорацию, даже если у него нет на это времени/желания/прибыли от проекта?


          1. Areso
            08.06.2026 08:46

            Авторы WinRAR не открывают исходники, авторы Windows не открываются исходники

            и не публикуют бинари файлы на GitHub'e.
            Поэтому к ним и не возникает такого вопроса.

            А так да, автор ничего не должен (даже в случае использования ГитХаба исключительно для публикации бинарников), но и пусть не удивляется, если ему скажут "фу". Потому что кроме "должен" и "не должен" (в прочтении "как закон" или "как контракт"), есть еще некая культурная норма, и за нарушение культурных норм следует порицание (а за нарушение закона или условий контракта, которые тоже построены на базе законов, следуют иски в суд, административная и уголовная ответственность).


            1. ImagineTables
              08.06.2026 08:46

              и не публикуют бинари файлы на GitHub’e. Поэтому к ним и не возникает такого вопроса.

              А ещё они не раздают свои программы бесплатно. Они их продают, и на вырученные деньги вают лендинг, платят за хостинг и поддерживают всю эту радость.

              Человек сделал для вас программу, бесплатно её раздаёт и вместо спасибо получает претензии, что свой домен не зарегистрировал, а воспользовался гитхабом для раздачи дистрибутива.


        1. Neusser
          08.06.2026 08:46

          Где вы в тексте увидели, что вам дали ссылку на исходники?


        1. andy_light
          08.06.2026 08:46

          Может, я путаю, но разве на гитхабе нет проектов с закрытым исходным кодом? Насколько я знаю, таковые имеются. Поэтому утверждение "хостинг исходного кода" неверно. Или я неправ?


  1. lTsunam1l
    08.06.2026 08:46

    Зарегистрировался на хабре только чтобы написать этот коммент.

    Дружище, ты буквально сделал то, что я искал годами. Спасибо!

    Я очень привык к FBReader'у и поэтому слегка непривычно, что я не могу и листать и прокручивать одновременно, но в остальном — шик. Будет ещё круто если будет возможность добавить возможность использовать другие языки(извиняюсь если она уже есть, пока не тестил китайский, если работает, можно практически выбросить DuChinese)

    Также пока не тестил как работает добавление в Anki, было бы круто если ко всему подтягивало бы предложение в котором было это слово чтобы не терять контекст


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Спасибо большое!
      Переводчик на китайский работает, словари пока только английские


      1. lTsunam1l
        08.06.2026 08:46

        Вот словарь бы подвязать, или какую-то возможность добавлять словари

        Просто прямой перевод, скажем, в английском сработает гораздо чаще чем в том же китайском, там значение контекста очень высокое

        По трекеру прогресса внизу не планируете делать возможность прокрутки?

        В любом случае отличная работа!


    1. Ogoun
      08.06.2026 08:46

      Есть отлично кастомизируемый MoonReader, пользуюсь им много лет, пока ни одного минуса не находил.


  1. b_m_s
    08.06.2026 08:46

    Хорошо получилось! Написал в личку предложения и пожелания =)


  1. duselguy
    08.06.2026 08:46

    Странно, что ни здесь, ни в основном README на гитхаб нет упоминаний поддержки pdf в последней версии. Supported formats: EPUB, FB2, FB2.ZIP, TXT.


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Моя оплошность, спасибо за замечание, забыл обновить перед публикацией. В следующем релизе обязательно все актуализирую


  1. SerjNSK
    08.06.2026 08:46

    DjVu в планах нет добавить?


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Честно, пока такого не планируется


  1. RulenBagdasis
    08.06.2026 08:46

    Умные онлайн-инструменты, то, ради чего всё затевалось… Приложение работает локально.

    1. Это как?

    2. Как подключить, например, словари Lingvo? Вообще, странно, что про словари ни слова не написано, вы же перевод как основную фичу заявляете.

    MRead уже опубликован и доступен в RuStore, а также прямо сейчас проходит модерацию на AppGallery, Uptodown и Aptoide (к сожалению без Гугла).

    А в чём причина отказа публиковать андроид-приложение в гуглплей?


    1. ZEDDTAY Автор
      08.06.2026 08:46

      Читалка работает полностью локально, но функции перевода и определений запрашивают внешние API

      Встроенных словарей в приложении пока нет. В планах добавить интеграцию с установленными на телефоне

      Публикация в Google Play из РФ сейчас требует сложных обходных путей


      1. the_PROTECTION
        08.06.2026 08:46

        Читалка работает полностью локально

        "Оффлайн" воспринимается привычнее и понятнее имхо. Наверное к этому был вопрос.

        Публикация в Google Play из РФ сейчас требует сложных обходных путей

        Даже бесплатных приложух?


        1. Oncenweek
          08.06.2026 08:46

          Даже бесплатных приложух?

          Да, простого способа оплатить взнос для создания аккаунта разработчика нет, тут нет разницы платное оно или бесплатное


      1. RulenBagdasis
        08.06.2026 08:46

        Читалка работает полностью локально, но функции перевода и определений запрашивают внешние API

        Так перевод заявлен основной фичей. Для меня это значит, что читалка требует постоянного подключения к интернету, без которого я не смогу воспользоваться переводом.

        Публикация в Google Play из РФ сейчас требует сложных обходных путей

        Публикация бесплатных приложений без рекламы требует обходных путей?