В эпоху цифровых технологий поиск идеального приложения для заметок кажется бесконечным, регулярно появляются новые. Благодаря множеству возможностей SiYuan стал интересным соперником. Это приложение обещает функции, которые привлекли внимание. Но как это проявляется в практическом использовании? Посмотрим, сможет ли SiYuan конкурировать с Logseq и Anytype.
Знакомство с SiYuan
SiYuan — это система управления персональными знаниями от китайских разработчиков с открытым исходным кодом, которая поддерживает блочное редактирование Markdown. Может использоваться как для управления структурированной, так и неструктурированной информацией. Ориентирована на конфиденциальность и полное оффлайн использование.
Ключевые особенности
По своей сути SiYuan — сложный редактор Markdown на основе блоков. Двунаправленные ссылки (backlinks) есть, все как мы любим. Также есть виртуальные ссылки — это своего рода «ссылка на блок», которая автоматически обнаруживается на основе текста существующей ссылки на блок или имени блока, но на самом деле она не связана с блоком, а только помечена в редакторе.
Само приложение на Electron, здесь без неожиданностей. Русского языка в интерфейсе нет. Данные хранятся в папке рабочего пространства в виде следующей структуры папок:
assets
используется для хранения вставленных файловemojis
для хранения emojisnippets
для хранения фрагментов кодаstorage
для хранения пользовательских запросов, условий, расположения окон и т.п.templates
для фрагментов шаблоновwidgets
для виджетовplugins
для плагиновpublic
для хранения опубликованных данных
Остальные папки — это папки для ваших заметок, созданные пользователем. Файлы с расширением .sy
в этой папке записной книжки используются для сохранения данных, формат данных — JSON.
Расширенный поиск — это нечто. Приложение отличается способностью выполнять поиск в нескольких рабочих пространствах (или любом заданном) с подробным предварительным просмотром, что делает поиск информации быстрым и эффективным. Тут есть поиск и по типам контента, и по ключевым словам, и по регулярному выражению, и даже SQL запросом. Также легко сохранить запрос для поиска в будущем.
Еще одна любопытная возможность — это доступ к вашему приложению через браузер. То есть прямо в приложении разрешаете доступ к нему из браузера и вы с любого другого устройства в локальной сети получаете полностью работоспособное приложение со всем набором данных. Даже если вы пользуетесь мобильным приложением. Да, просто разрешаете внешние подключения в мобильном приложении и открываете адрес в браузере.
Также вы можете развернуть Docker образ и запустить серверную часть, доступ к приложению получаете через браузер. Если у вас возникнет желание развернуть образ в Kubernetes, то вот манифест:
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: siyuan
namespace: siyuan
labels:
app: siyuan
spec:
selector:
matchLabels:
app: siyuan
template:
metadata:
labels:
app: siyuan
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
containers:
- name: siyuan
image: b3log/siyuan:v3.0.11
imagePullPolicy: IfNotPresent
command: [ "/bin/sh", "-c", "--" ]
args: ["/opt/siyuan/kernel --workspace=/siyuan/workspace/ --accessAuthCode=${AuthCode} --ssl=true"]
env:
- name: AuthCode
valueFrom:
secretKeyRef:
name: siyuan-secrets
key: password
- name: TZ
value: "Europe/Moscow"
resources:
limits:
cpu: 250m
memory: 512Mi
requests:
cpu: 50m
memory: 64Mi
ports:
- containerPort: 6806
volumeMounts:
- name: siyuan-workspace
mountPath: /siyuan/workspace
volumes:
- name: siyuan-workspace
persistentVolumeClaim:
claimName: siyuan-pvc
---
apiVersion: v1
kind: Service
metadata:
name: siyuan-service
namespace: siyuan
spec:
selector:
app: siyuan
ports:
- protocol: TCP
port: 6806
targetPort: 6806
Синхронизация между устройствами с end-to-end шифрованием тоже есть, но доступна только после разовой оплаты в 64$ (на момент написания обзора). За эти деньги вы получаете пожизненную возможность синхронизации через S3 или WebDAV вместе с поиском по вложениям. Разработчики сразу рубят на корню, запрещая использовать любые облачные сервисы для синхронизации (iCloud, Syncthing, Dropbox и т.п.).
В качестве альтернативы, вы можете перенести данные между устройствами через экспорт-импорт вручную. Но вряд ли вы захотите этим заниматься каждый раз. Синхронизация работает хорошо, периодически выполняются снэпшоты, и, в случае необходимости запускается синхронизация по измененным данным, что сильно экономит трафик.
За 148$ разового платежа вы также навсегда получаете 8 Гб облачного хранилища с синхронизацией от самих SiYuan, облачный inbox, а также все плюшки предыдущего уровня.
Также есть поддержка баз данных, эта функция похожа на реализацию в Notion. Две базы данных могут быть соединены через «отношения». Создается БД через команду /Database
, представлением по умолчанию является табличное представление. Затем эти две БД соединяются через отношение, в этом примере мы соединили авторов с их работами, а также посчитали количество работ в столбце Works count
. А потом легко можем извлечь данные SQL запросом. Это ли не чудо?
Плюсы
Есть приложения для всех основных платформ, а также расширения для браузера (web clipper). Пользовательский интерфейс достаточно удобный. Функция поиска особенно прекрасна, отличный предварительный просмотр до уровня блоков, нет необходимости открывать файлы в новых окнах.
Перечислим прочие функции:
- бесплатно даже для коммерческого использования (привет Obsidian)
- cсылки на уровне блока и двунаправленные ссылки
- поддержка протокола siyuan://, это позволит вам сослаться на кокретный блок в вашей базе знаний и открывать ссылку из других приложений
- поддеркжа истории изменений
- пользовательские атрибуты
- поддержка SQL-запросов
- математические формулы, диаграммы (в том числе PlantUML), блок-схемы, диаграммы Ганта, временные диаграммы и т. д.
- web clipper
- аннотация PDF
- экспорт и импорт
- базы данных
- интервальное повторение
- подключение OpenAI API
- несколько вкладок, перетаскивание и разделение экрана
- шаблоны
- приложения для Android/iOS
- Docker образ
- API
- маркетплейс плагинов и виджетов от сообщества (правда часть из них на китайском языке)
Минусы
Хотя SiYuan предлагает многообещающие функции, есть некоторые проблемы:
- Проблемы с производительностью. Пользователи сообщают о задержках и низкой производительности даже на ПК с хорошими характеристиками, что указывает на проблемы с оптимизацией, которые необходимо устранить. Я у себя подобных проблем не наблюдал.
- Платная синхронизация, но радует, что оплата разовая
- Отсутствие контроля версий Git
- Нестандартное управление файлами: решение SiYuan не использовать обычные файлы или файловые структуры Markdown, а использовать JSON может стать препятствием для тех, кто хочет перейти с других систем.
- Особенности пользовательского интерфейса: проблемы с регистрацией щелчков мыши, непоследовательная функциональность множественного выбора и чрезмерно анимированные всплывающие окна могут мешать работе пользователя. У себя такого не замечал, всплывающие окошки есть, но не очень навязчивы.
- Тормозящий граф. Представление графа, хотя и полезно, но есть проблемы с производительностью и требует ручного обновления для визуализации изменений.
- В iOS версии нет возможности отправить контент в заметки
Мои мысли
Быстрая установка приложения, затем экспорт заметок из Logseq и Anytype в Markdown файлы. Затем такой же быстрый импорт в SiYuan и все мои заметки полностью доступны. Синхронизация работает без проблем, есть все основные функции. За время использования не было ни одного случая потери данных. Заметок много, но поиск радует своим широким набором возможностей и скоростью.
Перейду ли я на SiYuan полностью? Нет, вряд ли. Заменит ли SiYuan Logseq? Да, определенно. От Anytype отказаться я пока не смогу, все-таки он имеет более продуманный и дружелюбный интерфейс, прекрасно работает с заметками, легко делиться контентом из мобильных приложений, бесплатная синхронизация. При этом SiYuan отличается продвинутым поиском (а это очень важно для меня), двунаправленными ссылками, поддерживает SQL запросы и работает из любого браузера. В Anytype же не хватает возможностей аутлайнера, нормального поиска. У них до сих пор есть неприятный баг с поиском в импортированных файлах. На данный момент выбираю связку SiYuan + Anytype. Оба продукта находятся в активной разработке, и оба имеют шанс на успех, чего не скажешь о Logseq.
Подойдет ли SiYuan вам? Как и в случае с любым другим приложением, лучший способ определить, соответствует ли SiYuan вашим потребностям — попробовать его. Учитывая его бесплатность, это ничего не будет вам стоить, кроме потраченного времени. Синхронизацию также дают попробовать, можно подключить пробный период на 7 дней. SiYuan предлагает уникальный набор функций, который я не встречал в других продуктах. На него точно стоит обратить свое внимание.