История клиента для HabraHabr. Опять. Только лучше

в 4:02, , рубрики: iOS, iphone, клиент, приложение, разработка, разработка под iOS, хабр, метки: , , , , ,

То, о чем я хочу сегодня рассказать, началось еще летом этого года. Я был в отпуске и случайно на хабре проскочила статья о клиенте для него под iOS. Официальный давно канул в небытие, а это приложение, по моему мнению, было ужасно. Да еще и платно. Почти.

В комментариях к тому топику людям, которые говорили о том, что 1 бакс за такое приложение все-таки дорого, кто-то ответил, мол, «Сперва добейся», поэтому я не стал ничего писать в комментарии, хотя сначала просто хотелось дать пару советов. Но когда я вернулся, решил, что проще сделать хорошее приложение самому. Бесплатно. Совсем.

История клиента для HabraHabr. Опять. Только лучше

Для начала хочу сказать, что я никого не хочу обидеть этим топиком, поэтому, если авторам упомянутой выше статьи не понравится тон, в котором здесь описано все, что их касается — я готов исправить на более нейтральные варианты. Но мое мнение: так делать приложения нельзя, а просить за такие приложения деньги — ну, мне бы было стыдно.

Дизайн и MockUp`ы

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

Вложений тоже делать особо не хотелось, ведь зарабатывать я на приложении тоже не собираюсь, поэтому очевидным решением стала покупка готового UI Design Kit за 6 баксов. Жаль, в комплекте не было иконки. Ниже будет 9 скриншотов, иконку вы уже видели. лучше бы не видели, да?Ну, я не художник, поэтому объективно иконка получилась не очень.

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

Логика работы

ВНЕЗАПНО для меня, оказалось, что API у Хабра нет. Как потом выяснилось, это уже писали в комментариях к тому топику. Возможность логиниться отпала.
Остался единственный возможный вариант — парсинг html страниц. Было решено использовать мобильную версию для поиска постов, а вот список хабов есть только на основной версии сайта. Что ж, в любом случае, неплохо.
Парсер, естественно, никто изобретать не собирался, я взял хороший, основанный на libxml:тыц.
После создания основных контроллеров интерфейса осталось добавить функционал — парсинг ссылок в таблицы. Таким образом, на все приложение у меня ушел вечер субботы и утро понедельника. 3 сентября приложение было отправлено на Review в AppStore.
Этой ночью оно появилось в магазине.

Функционал

В первой версии функционал таков:

  • Список постов в Ленте
  • Список Хабов
  • Список постов в Хабе
  • Просмотр постов и комментариев
  • Раздел Избранное: храните свои любимые топики локально и имейте к ним доступ даже без Интернета.
  • Функция автоматической подгонки текста под размеры колонки

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

Помощь сообщества

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

Скриншоты

Все картинки кликабельны
История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше История клиента для HabraHabr. Опять. Только лучше

Хотеть!

Приложение доступно на двух языках: Русский, English.
Если в вашем iPhone установлен любой язык, отличный от русского, интерфейс приложения будет на английском языке. Сразу хочу сказать, что перевод плохой. Вы можете помочь с переводом на любую локализацию — напишите мне в личку, там не так много переводить.

Ссылка для загрузки в AppStore: lHabr

P.S.
1) Приложение может и наверняка содержит баги. Пишите мне, пожалуйста, я исправлю.
2) Иконка — говно. Но у меня нет лучше, правда.

Автор: plasm

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js