Вопрос или проблема
Существует ли сравнимая альтернатива Google Keep?
Функции, которые мне нужны:
- заметки должны поддерживать вставку изображений (через копирование и вставку) и других файлов (PDF)
- заметки, изображения и PDF должны индексироваться/быть доступными для поиска (через OCR (например, easyocr))
- поддержка PostgreSQL в качестве основного хранилища данных, не обязательно для индексации/поиска, но чтобы хранить все мои данные в безопасном месте
Я написал приложение для заметок с интегрированным живым поиском (https://github.com/jjYBdx4IL/ajax-solnotes), но бросил его, потому что Google Keep идеально распознает текст на изображениях, которые я могу просто скопировать и вставить в заметки там. Я также не очень хочу разрабатывать новый красивый интерфейс с нуля.
Так что вы посоветуете, чтобы достичь цели? Существует ли универсальный UI фреймворк, который позволяет мне построить это без переосмысления интерфейса? Или уже существует полное и бесплатное решение, которое я просто упустил?
Ответ или решение
Существует несколько хороших открытых альтернатив Google Keep, которые могут соответствовать вашим требованиям. Рассмотрим несколько из них, а также возможные решения для упрощения вашего процесса разработки.
1. Joplin
- Описание: Joplin — это мощное приложение для заметок, которое поддерживает как текстовые заметки, так и файлы (включая изображения и PDF).
- Поддержка OCR: Хотя Joplin не поставляется с встроенной поддержкой OCR, вы можете интегрировать его с библиотеками, такими как Tesseract или EasyOCR, чтобы обрабатывать изображения вручную.
- Хранение в PostgreSQL: Joplin использует файловую систему, но вы можете настроить его с помощью интеграций с облачными хранилищами, или самостоятельно настроить PostgreSQL через плагины.
- Интерфейс: У Joplin уже есть удобный пользовательский интерфейс, который вы можете использовать без необходимости разрабатывать его заново.
2. Standard Notes
- Описание: Standard Notes предлагает безопасное, открытокодируемое хранение заметок. Он поддерживает расширения, которые позволяют добавлять поддержку для различных форматов файлов.
- Поддержка OCR: Как и Joplin, Standard Notes требует интеграции сторонних библиотек для OCR.
- Хранение в PostgreSQL: В стандартной версии используется собственное хранилище, но можно настроить API для интеграции с PostgreSQL, чтобы хранить данные.
- Интерфейс: Стандартный UI прост и функционален, он позволяет фокусироваться на ваших заметках.
3. Laverna
- Описание: Laverna — это открытое приложение для заметок с веб-интерфейсом. Поддерживает Markdown и позволяет включать изображения и файлы.
- Поддержка OCR: Для работы с изображениями потребуется интеграция с OCR-библиотеками.
- Хранение в PostgreSQL: Используйте MongoDB в качестве основного хранилища, но можно написать адаптер для PostgreSQL с соответствующей моделью данных.
- Интерфейс: Простота интерфейса позволяет легко осваивать приложение и работать с заметками без лишних заморочек.
4. Turtl
- Описание: Turtl — защищенное место для хранения заметок и файлов. Вы можете хранить текстовые заметки, изображения и файлы.
- Поддержка OCR: OCR не встроен, но можно использовать внешние инструменты.
- Хранение в PostgreSQL: Хотя Turtl использует SQL-систему, в ней отсутствует поддержка PostgreSQL, но вы можете сделать экспорт и конвертацию данных вручную, если нужно.
- Интерфейс: Turtl имеет простой и чистый интерфейс.
Рекомендации по разработке интерфейса
Если вы ищете универсальный UI-фреймворк, который позволит вам быстро разрабатывать приложение без необходимости создавать интерфейс с нуля, рассмотрите следующие варианты:
- React или Vue.js: Эти библиотеки позволяют быстро разрабатывать пользовательские интерфейсы и интегрировать их с бэкендом.
- Bootstrap или Tailwind CSS: Используйте CSS-фреймворки, чтобы упростить процесс стилизации вашего приложения и сделать его отзывчивым.
- Electron: Для создания настольных приложений на основе веб-технологий, что позволит вам разрабатывать универсальное приложение, работающее на разных платформах.
Таким образом, вы можете выбрать одну из перечисленных открытых альтернатив для заметок и адаптировать ее под свои нужды с помощью интеграций и настроек, а также разработать пользовательский интерфейс с помощью готовых решений.