1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-omnivore

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Omnivore

GitHub Workflow Status Discord Mastodon Follow Twitter Follow GitHub

Логотип Omnivore

Omnivore — это полное, с открытым исходным кодом решение для тех, кто любит читать текст.

Мы создали Omnivore, потому что любим читать и хотим, чтобы это было более социальным. Присоединяйтесь к нам!- Выделение, заметки, поиск и обмен

  • Полное навигационное управление с клавиатуры
  • Автоматически сохраняет ваше место в длинных статьях
  • Добавление статей из рассылок по электронной почте (с поддержкой Substack!)
  • Поддержка PDF
  • Веб-приложение на Node.js и TypeScript
  • Нативное приложение для iOS (исходный код)
  • Приложение для Android (исходный код)
  • Прогрессивное веб-приложение для пользователей Android
  • Расширения браузеров для Chrome, Safari, Firefox и Edge
  • Метки (теги)
  • Поддержка работы в офлайн-режиме
  • Прочтение текста вслух (только для iOS)
  • Поддержка Logseq через наш плагин Logseq
  • Поддержка Obsidian через наш плагин ObsidianКаждая часть полностью с открытым исходным кодом! Вы можете форкнуть, расширить или развернуть его на собственном сервере.

Руководство по запуску самозаведенного сервера можно найти здесьweb-screenshot-listview

Присоединяйтесь к нам на Discord! :speech_balloon:

Мы создаем наше сообщество на Discord. Присоединяйтесь к нам!

Читайте больше о Omnivore на нашем блоге. https://blog.omnivore.app/p/getting-started-with-omnivore

Признание :tada:

Omnivore использует некоторые отличные программы с открытым исходным кодом:- TypeScript - Большая часть нашего бэкенда и фронтенда написана на TypeScript.

  • Next.js - Наш фронтенд — это приложение Next.js, которое размещено на Vercel.
  • SWR - Мы используем SWR для всех запросов данных в веб-приложении.
  • Stitches - Мы используем Stitches на фронтенде для стилизации наших компонентов.
  • Mozilla Readability - Мы используем библиотеку Mozilla Readability для упрощения чтения страниц.
  • Swift GraphQL - Мы генерируем наши запросы GraphQL на iOS с помощью Swift GraphQL.
  • Apollo GraphQL - Мы генерируем наши запросы GraphQL на Android с помощью Apollo GraphQL.
  • Radix - Мы используем компоненты Radix UI на нашем фронтенде.
  • PDF.js - PDF.js используется для обеспечения функциональности PDF с открытым исходным кодом.
  • И многие другие отличные библиотеки, просто ознакомьтесь с нашими файлами пакетов, чтобы увидеть, что мы используем.## Импорт библиотек

Ознакомьтесь с нашими документами для получения информации о импорте данных из других приложений.

Как настроить локальную разработку :computer:

Самый простой способ начать локальную разработку — использовать docker compose up. Это запустит контейнер PostgreSQL, наш веб-фронтенд, API-сервер и наш микросервис для загрузки контента.

Требования для разработки

Omnivore написан на TypeScript и JavaScript.

  • Node.js (v18.16) и Yarn -- Версии управляются с помощью Volta.
  • Chromium -- См. ниже информацию об установке.

Запуск веб- и API-сервисов

1. Запуск docker compose

git clone https://github.com/omnivore-app/omnivore
cd omnivore
docker compose up

Это запустит PostgreSQL, инициализирует базу данных и запустит веб- и API-сервисы.

2. Открыть браузер

Откройте http://localhost:3000 и подтвердите, что Omnivore запущен.

3. Вход с тестовой учетной записью

При настройке базы данных docker compose создает учетную запись demo@omnivore.app, пароль: demo_password.

Перейдите на http://localhost:3000/ в вашем браузере и выберите Continue with Email для входа.

Разработка фронтенда

Если вы хотите работать только с фронтендом Omnivore, вы можете запустить бэкенд-сервисы с помощью docker compose, а фронтенд — локально:

docker compose up api content-fetch
cd packages/web
cp .env.template .env.local
yarn dev
```Вам нужно будет настроить некоторые значения в новом файле `.env.local`. Эти значения необходимы для запуска службы `web` напрямую на вашем хост-компьютере и запуска `api` и `content-fetch` внутри Docker:

```sh
NEXT_PUBLIC_BASE_URL=http://localhost:3000
NEXT_PUBLIC_HIGHLIGHTS_BASE_URL=http://localhost:3000
NEXT_PUBLIC_LOCAL_BASE_URL=http://localhost:3000
NEXT_PUBLIC_SERVER_BASE_URL=http://localhost:4000
NEXT_PUBLIC_LOCAL_SERVER_BASE_URL=http://localhost:4000

Запуск службы puppeteer-parse вне Docker

Для сохранения страниц вам нужно запустить службу puppeteer-parse.

1. Установка и настройка Chromium

brew install chromium --no-quarantine
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
export CHROMIUM_PATH=`which chromium`

2. Перейдите в директорию службы, настройте файл окружения и установите зависимости

cd packages/puppeteer-parse
cp .env.example .env
yarn

3. Запустите службу

yarn start

Это запустит службу puppeteer-parse на порту 9090.

В вашем браузере перейдите на http://localhost:3000/home, нажмите кнопку Add Link и введите URL, например, https://blog.omnivore.app/p/getting-started-with-omnivore.

Вы должны увидеть, как открывается окно Chromium и переходит по вашей ссылке. Когда служба завершит загрузку вашего контента, вы увидите его в вашей библиотеке.

Как развернуть на собственном сервере

Руководство по запуску самовнедренного сервера можно найти здесь

Лицензия

Omnivore и наши расширения для Readability.js распространяются под лицензией AGPL-3.0.

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

Вы можете оставить комментарий после Вход в систему

Введение

Omnivore — это бесплатное, открытое-source приложение для чтения «сперва прочитать» (read-later), предназначенное для серьёзного чтения. Развернуть Свернуть
AGPL-3.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-omnivore.git
git@api.gitlife.ru:oschina-mirror/mirrors-omnivore.git
oschina-mirror
mirrors-omnivore
mirrors-omnivore
main