Project Cypress — нативное клиентское приложение Discourse для iOS

Хотел уделить минуту и представить проект, который я начал. Project Cypress — нативное клиентское приложение Discourse для iOS.

Сейчас проект находится на очень ранней стадии разработки, и первая сборка уже доступна через TestFlight.

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

Установить через TestFlight: TestFlight - Apple

Скриншоты

 

12 лайков

@igorz, отличная работа!

Однако, учитывая, что вы ещё не известны сообществу и пока не заслужили его доверие, не стоило ли опубликовать исходный код? Где-то есть этот проект на GitHub?

Вы предлагаете пользователям устанавливать закрытое ПО, тестовый код от непроверенного автора (новый аккаунт в Meta, созданный всего 3 дня назад), который даже ещё не прошёл проверку для публикации в App Store?

Это действительно зона риска:

6 лайков

Мне нравится, что вы постарались сохранить тему и интерфейс постов максимально близкими к тому, что у нас на веб-сайте — всё очень знакомо. Отличная работа!

11 лайков

@merefield Спасибо за обратную связь! Я не знал о мошенничестве через TestFlight, поэтому такой риск понятен. Приложение с закрытым исходным кодом, так как я планирую добавить платные опции в будущем для поддержки дальнейшего развития (я единственный разработчик).

Для контекста: я веду сообщество Discourse для своего другого приложения (HomeHabit), и это одна из главных причин, по которой я хотел иметь нативный клиент. Изначально я думал над этим проектом несколько лет назад, однако примерно в то же время здесь появилась публикация о приложении Fig, поэтому я просто начал использовать его. Теперь, когда разработка Fig прекращена, я решил вернуться к этой идее.

8 лайков

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

4 лайка

Да, это не идеально, но сделает презентацию «лучше».

2 лайка

Релиз 0.1 (103)

  • Улучшен рендеринг таблиц
  • Улучшен рендеринг onebox
  • Поддержка видео YouTube
  • Отображение полного пути категории для каждой темы (подкатегории)
  • Отображение лайков и закладок в постах
  • Разворачиваемый раздел темы для чтения на весь экран (на iPad)
  • Сворачиваемые посты (нажмите на заголовок)

Доступно через TestFlight: Присоединиться к бета-версии проекта Cypress - TestFlight - Apple

Релиз 0.1 (104)

  • Поддержка видеоэлементов (загруженные видео)
  • Поддержка принятых ответов
  • Темы теперь имеют прокрутку на основе постов для более удобной навигации между постами (в длинных темах при переходе к постам всё ещё есть некоторые проблемы)
  • Ссылки на темы открываются на месте
  • Цепочки ответов на посты (нажмите на количество ответов, чтобы увидеть все ответы на посты)

1 лайк

Релиз 0.2 (105)

  • Новый поток навигации — главный экран позволяет вернуться на предыдущий
  • Представления списка тем: Последние, Новые, Непрочитанные, Популярные
  • Список тем автоматически обновляется при повторном открытии приложения
  • Представления категорий и тегов (нажмите на категорию или тег в заголовке темы)
  • Действия с постами — лайк и закладка
  • Действия с темами — закладка и уровень уведомлений
  • Улучшено форматирование количества постов и времени последней активности
  • Улучшена обработка ошибок API (меньше сбоев)
  • Исправление — ссылки на темы теперь открываются внутри приложения
  • Исправление — некоторые вложенные правила Markdown не работали (например, жирный текст внутри ссылки)
  • Исправление — тема теперь использует время обновления для последней активности, чтобы быть согласованной с интерфейсом Discourse

Спасибо всем, кто отправлял отчеты о сбоях и отзывы через TestFlight!

Похоже, не нравится моя URL-адрес сообщества, возможно, потому что мы установили его в подпапку?

Давайте разберёмся, похоже, API не возвращает ожидаемый ответ. Спасибо, что попробовали!

Кстати, у вас приложение по умолчанию в светлой теме? Это настройка вашего устройства? Это может быть ошибкой, так как сейчас оно должно всегда работать в тёмной теме (пока что, поэтому в светлой теме ещё не тестировалось).

Приложение находится в тёмном режиме, но появляется маленькое модальное окно после нажатия на знак плюса… оно было светлым.

Оно похоже на окно iOS, и, кажется, оно учитывает мой светлый режим на телефоне.

2 лайка

@jordan-violet Проблема действительно была связана с установкой в подпапку. Исправление будет доступно в следующем релизе.

2 лайка

Мы, подпапочники, всегда создаём проблемы в пространстве Discourse!

1 лайк

Релиз 0.2 (106)

  • Исправлено: Невозможно добавить экземпляр Discourse, установленный в подпапке
  • Исправлено: Просмотры категорий и тегов не загружают правильный список тем
  • Исправлено: Тёмная тема не применяется к некоторым модальным окнам, когда устройство находится в светлом режиме
  • Исправлено: Сбой при ошибке загрузки контента изображения
  • Исправлено: Сбой, когда URL содержит символы Unicode (например, имя пользователя с нелатинскими символами)

Прочие примечания

  • Частные сообщества пока не поддерживаются
  • Поддержка светлого режима будет добавлена позже (также будет настраиваться в Настройках)
1 лайк

Релиз 0.3 (108)

  • Новое — Поиск (темы/сообщения)
  • Новое — Поддержка приватных сообществ с обязательным входом
  • Новое — Возможность выхода из сообщества
  • Новое — Непрочитанные темы подсвечиваются в списке (статус непрочитанного пока не обновляется через активность в приложении)
  • Исправлено — Касание вне видимого контекстного меню больше не вызывает касания других элементов
2 лайка