https://github.com/pokatomnik/kriper
Kriper.net mobile app
https://github.com/pokatomnik/kriper
android deno jetpack-compose kriper web-scraping
Last synced: about 1 month ago
JSON representation
Kriper.net mobile app
- Host: GitHub
- URL: https://github.com/pokatomnik/kriper
- Owner: pokatomnik
- License: mit
- Created: 2022-11-30T15:20:53.000Z (over 3 years ago)
- Default Branch: dungeon-master
- Last Pushed: 2024-11-20T08:10:08.000Z (over 1 year ago)
- Last Synced: 2024-11-20T10:12:33.607Z (over 1 year ago)
- Topics: android, deno, jetpack-compose, kriper, web-scraping
- Language: HTML
- Homepage: https://github.com/pokatomnik/kriper
- Size: 22.1 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Kriper
Ой, а что это тут у нас?
Конечно же приложение для чтения историй с веб сайта https://kriper.net (далее - просто Вебсайт).
# Содержание
- [Обзор возможностей](#Обзор-возможностей)
- [Что оно умеет](#Что-оно-умеет)
- [Оффлайн](#Оффлайн)
- [Группы меток](#Группы-меток)
- [Метки](#Метки)
- [Поиск](#Поиск)
- [Избранное](#Избранное)
- [Темы](#Темы)
- [Галерея](#Галерея)
- [Видео](#Видео)
- [Подборки](#Подборки)
- [Хронология](#Хронология)
- [Как это работает](#Как-это-работает)
- [Сбор данных](#Сбор-данных)
- [Благодарности](#Благодарности)
- [Cкриншоты](#Скриншоты)
## Обзор возможностей
### Что оно умеет
Позволяет читать истории, которые были опубликованы на сайте офлайн. Есть навигация по историям:
- По группам меток
- По меткам
- С помощью поиска
- По автору
- По собственному избранному списку
### Оффлайн
Все истории доступны для чтения без подключения к Интернету, однако если в истории есть картинки или вставлено видео, то его получится посмотреть только если интернет доступен. Это чисто техническое ограничение, так как такой объем информации включить в apk файл можно, но он будет слишком большим. Сейчас абсолютно все тексты абсолютно всех историй сайта (которые доступны публично!) доступны в этом приложении
### Группы меток
Вебсайт группирует все истории сначала по группам меток, и затем по меткам. Приложение продолжает эту традицию и делает также. Группы меток можно открыть находясь на Главном Экране.
### Метки
Метки группируют истории по какому-либо признаку. Они также доступны на Главном Экране. Можно либо отобразить все сразу списком или же сначала выбрать [группу меток](#Группы-меток), и затем открыть метки конкретной группы.
### Поиск
Приложение позволяет искать истории по
- Названию истории
- Автору
- Никнейму пользователя, добавившего историю
### Избранное
Истории можно добавлять в избранное, чтобы открывать их позднее. Это свой личный оффлайновый список, никак не связанный с Вебсайтом. Чтобы добавить историю в избранное, надо ее открыть и тапнуть по истории 2 раза. Открыть список Избранного можно на Главном Экране приложения. Удалить из избранного можно в Списке Избранного, свайпнув карточку истории влево или тапнув на текст истории повторно.
### Темы
Приложение поддерживает светлую и темную тему. Тема может выбираться автоматически в зависимости от темы устройства или же можно вручную переопределять ее в настройках. Кроме того, для чтения истории доступен выбор цвета фона и шрифта.
### Галерея
В _некоторых_ историях есть картинки. Картинки показываются как внутри истории, так и в виде Галереи (кнопочка под текстом истории)
### Видео
В _некоторых_ историях есть видео с [ютуба](https://youtube.com). Такие видео тоже можно посмотреть с помощью специальной кнопки под текстом истории.
### Подборки
В приложении есть подборки (никак не связанные с Вебсайтом!). С помощью них легко выбрать себе хорошую историю: выбирайте:
- Все подряд
- Хорошие короткие истории
- Хорошие длинные истории
- Новые истории
### Хронология
Каждая история, которую вы открываете сохраняется в Истории. Раздел истории доступен всегда: в нем упорядочены все названия открытых историй по дате последнего открытия.
## Как это работает
У приложения есть две части:
- Веб скраппер, который выкачивает полностью весь Вебсайт, индексируя его, и преобразуя все веб страницы в формат [Markdown](https://www.markdownguide.org/basic-syntax/).
- Приложение, которое берет сгенерированный контент и кладет его в apk файл при сборке, благодаря чему все истории становятся доступны оффлайн.
Вебкраппер написан на [Typescript](https://www.typescriptlang.org/) с использованием рантайма [Deno](https://deno.land), для парсинга используется библиотека [Deno DOM WASM](https://deno.land/x/deno_dom@v0.1.35-alpha/deno-dom-wasm.ts).
Мобильное приложение написано на Kotlin с использованием фреймворка [Jetpack Compose](https://developer.android.com/jetpack/compose), Accompanist, Room, и [многих других](https://github.com/pokatomnik/kriper/blob/dungeon-master/Kriper/app/build.gradle).
## Сбор данных
Приложение никаким образом не собирает пользовательские данные, не передает их третьим лицам, не собирает деперсонализированной информации об устройстве, пользователе и его местоположении.
> Важно: при работе приложения и просмотре историй, в которых имеются изображения и/или встроеннные видео, некоторые пользовательские данные могут быть переданы на Вебсайт и/или соответствующую платформу видеохостинга. Передача данных в этом случае регламентируется правилами пользования сайтов [https://kriper.net](https://kriper.net) и/или [https://youtube.com](https://youtube.com)
## Благодарности
Отдельную благодарность хотелось бы выразить rainbow666 [rainbow666@kriper.net](rainbow666@kriper.net) и его команде, а также авторам историй Вебсайта, без них приложение не случилось бы.
## Скриншоты
