Телеграмм канал (https://teleg.run/icms2app)
В данном репозитории публикуется исходный код проекта.
- SideMenu (Navigation Drawer), который формируется из меню, созданного в админ-панели (инструкция будет позднее).
- Страница списка любого типа контента, добавленного в меню (см. выше).
- Страница объекта любого типа контета (осталось добавить вывод props).
- Функционал по созданию шаблона для страницы списка любого типа контента (шаблон выбирается в админ-панели или создается там же в окне редактирования кода)
- Некоторые базовые настройки в админ-панели: базовый цвет приложения, стартовая страница (выбирается один из типов контента).
Ленивая подгрузка материалов в списках.PullToRefresh - обновление списка по свайпу до упора вниз.- Авторизация/Регистрация
- Фильтр в списках.
- Фильтр на странице списка.
- Модальное окно с выбором категории при просмотре списка.
- Система рейтинга в списках и объектах (лайки).
- Страница - избранное, куда будут сохранятся отмеченные флагом объекты (исключительно на стороне мобильного приложения).
Если у вас есть пожелания по реализации какого-либо функционала - пишите их здесь либо в ветке форума: https://instantcms.ru/forum/thread32835.html
- Устанавливаем Node Package Manager: https://nodejs.org/
- Устанавливаем EXPO-CLI, так как разработка ведется с помощью Expo (что это такое, можете прочесть тут: https://expo.io/learn)
npm install expo-cli --global
- Клонируем или просто выкачиваем репозиторий проекта, распаковываем и следуем терминале/коммандной строке в директорию проекта.
- Запускаем проект:
expo start или yarn start (если установлен yarn)
- После того, как запустится Expo Metro Server (в коммандной строке появится много букаф и куаркод), нажимаем кнопочку I на клавиатуре для запуска ios эмулятора (только для MAC OS) или кнопочку A для запуска Android эмулятора.
- Тест на реальном устройстве одинаков для ios и android:
6.1. Устанавливем приложение Expo из магазина (Google Play или AppStore)
6.2. Android: Заходим в приложение и находим значек сканнера. Сканируем куаркод из коммандной строки. Ждем сборки бандла. IOS: Заходим в камеру телефона и сканируем куаркод. Ждем сборки бандла.
https://yadi.sk/d/_tg1rwUNkMV4bQ
https://yadi.sk/d/_EnE3EKTmCnjSg
После установки, необходимо сгенерировать ключ в настройках компонента, указать начальную страницу там же и настроить/выбрать шаблоны для типов контента.
Добавить меню, по аналогии:
Внимание!!! В поле ссылка указывается системное название типов контента!
Системное имя меню (строго): mobile_menu
Далее идем в проект с приложением по пути: src/config/const и меняем значение констант:
BASE_URL - URL вашего сайта API_KEY - Ваш ключ соответственно.
В дальнейшем либо размещу данные доработки в отдельной ветке на гитхабе, либо предложу Fuze внести доработки в офф. ветку (если посчитает их необходимыми для базового компонента), либо вынесу в отдельный компонент, который будет дополнением к JSON_API
Для компонента JSON_API требуется поле-редактор кода ACE. Его доже немного доработал (исправил проблему с добавлением нескольких копий этого поля в одном месте.
https://expo.io/artifacts/07e4cd76-6a1a-41b0-a8c4-295aec8fe052
Переходим по ссылке:
https://exp.host/@droidfun/VunderkindMedia_InstantCMS_2_MobileApp
P.S. На телефоне должно быть установлено приложение Expo (Google Play или AppStore)
Сканируем куаркод, который будет на странице справа через приложение Expo (Android), через обычную камеру (iOS)
