Juie
Содержание

Руководство Juie

Juie объединяет заметки, дерево задач, доску, календарь и свободные канвасы. Это не несколько приложений в одной папке: задача, которую вы перетащили в календаре, остаётся той же задачей в дереве и на доске.

Как устроен экран

На компьютере четыре области: теги и подборки, список заметок, основная рабочая область и дерево задач. Боковые панели сворачиваются стрелками у края. На телефоне виды переключаются нижней панелью, остальные открываются через четвёртую кнопку; левая панель выезжает поверх экрана, а задачи становятся отдельным видом. Планшет в горизонтальном положении сохраняет раскладку компьютера; в вертикальном все основные виды остаются внизу, а список заметок стоит рядом с заметкой. Шапка заметки может заменить список оглавлением или деревом задач. На телефоне в горизонтальном положении слева остаётся узкая навигация; при наборе текста список, шапка и строка тегов уступают место редактору. Дерево задач везде занимает одну колонку: открытая задача заменяет его своей страницей. На телефоне свайп от левого края закрывает открытую заметку или страницу задачи — как кнопка «Назад».

Кнопки над основной областью переключают заметки, канвасы, доску, календарь и карточки. Ненужные виды можно скрыть в настройках; заметки остаются всегда.

Язык интерфейса выбирается в «Настройки → Интерфейс»: English, Русский, Қазақша или Qazaqsha (казахский латиницей без диакритики). Он не меняет язык ваших текстов. Если язык ещё не выбран, Juie открывается на английском.

Новое пространство пустое: Juie не добавляет в него приветственные заметки.

Заметки

Кнопка + рядом с поиском создаёт заметку. Её названием становится первый заголовок или первая непустая строка. Текст сохраняется по мере набора — кнопки «Сохранить» нет.

Список показывает название и начало текста. По умолчанию новые изменения выше; можно сортировать по дате создания или по алфавиту. Закреплённые заметки всегда стоят наверху, и их порядок задаётся вручную.

Контекстное меню строки позволяет закрепить, архивировать или удалить заметку. На компьютере оно также открывает заметку в отдельном окне. Там остаётся та же сессия и то же пространство, поэтому пароль повторно не нужен; доступны редактор, теги, обратные ссылки и кнопка «Поверх других окон». Нажатие на логотип Juie открывает случайную заметку.

Архив хранит заметки без срока. Корзина очищается по расписанию. Из обоих мест заметку можно восстановить; окончательное удаление убирает её текст и из локальной базы.

Markdown и редактор

Текст хранится как обычный Markdown: заголовки, жирный и курсивный текст, зачёркивание, ссылки, цитаты, списки, чекбоксы, код и таблицы. Контекстное меню редактора включает оформление, списки, чекбоксы и заголовки первого, второго и третьего уровня или обычный текст. Работают привычные сочетания с Cmd или Ctrl. На телефоне те же действия находятся в строке над клавиатурой: отмена, заголовок (повторные нажатия меняют уровень, четвёртое возвращает обычный текст), жирный, курсив, ссылка, ссылка на заметку [[, чекбокс, список, шаблон, поиск и перенос выделенных задач в дерево. Долгое нажатие открывает системное выделение с «Копировать» и «Вставить». Если выделение захватило перевод строки в конце, оформление не включает его. Обратная косая черта оставляет символ Markdown обычным текстом: \*не курсив* и \[\[не ссылка]].

В настройках есть два режима редактирования:

Кнопка Aa переключает режим чтения во всём приложении и сохраняет место в длинной заметке. Cmd/Ctrl+F ищет внутри открытой заметки; панель поиска располагается сверху, чтобы телефонная клавиатура её не закрывала. Направление текста определяется его содержимым, поэтому арабская письменность отображается справа налево.

Оглавление, версии и публикация

Оглавление собирается из заголовков открытой заметки и переводит к нужному разделу. На компьютере оно занимает место колонки задач и ту же ширину: если колонка задач уже открыта, текст не сдвигается; если она скрыта, оглавление открывает её место. После закрытия задачи возвращаются. На телефоне оглавление выезжает справа.

История сохраняет состояние примерно раз в минуту и при уходе из заметки. Сохранённую версию можно сравнить с текущей и восстановить.

При публикации создаётся отдельная открытая копия заметки. Прочитать её может каждый, у кого есть ссылка. Публикуйте только то, что должно покинуть зашифрованное пространство: другие заметки, история версий и ключи пространства в публикацию не попадают.

Публичная копия не меняется вслед за черновиком. После правки Juie помечает её устаревшей и ждёт, пока вы обновите её вручную. В том же окне можно скопировать ссылку или снять страницу с публикации. Полка «Опубликовано» и «Настройки → Аккаунт» показывают все страницы аккаунта, даже если самой заметки уже нет на этом устройстве.

При удалении опубликованной заметки Juie сначала снимает её страницу. Если сервер недоступен, приложение предупреждает об этом, а не делает вид, что страница исчезла. Вы можете подтвердить удаление; снятие публикации повторится позже. Такая заметка хранится в корзине дольше обычных тридцати дней. При удалении пространства снимаются его публикации. Страницы другого, закрытого пространства нужно сначала убрать через «Настройки → Аккаунт»: данные закрытого пространства не загружены.

Если цель wiki-ссылки тоже опубликована, ссылка на публичной странице ведёт к ней. Иначе остаётся обычным текстом. Публикация или снятие целевой страницы помечает исходную страницу устаревшей, чтобы вы обновили её осознанно.

Внешние картинки остаются внешними: Juie не хранит их и не загружает через свой сервер. Внутри приложения такая картинка загружается только после нажатия, поскольку запрос сообщает чужому серверу ваш адрес и время. На публичной странице она загружается как обычно: читатель уже открыл общедоступный материал.

Для публикации нужен аккаунт Juie. Что разрешено публиковать, как рассматриваются жалобы и что происходит после трёх снятий страниц, описано в правилах публикации.

Ссылки между заметками, обратные ссылки и теги

[[Название заметки]] ссылается на другую заметку, а [[Название заметки|видимый текст]] задаёт подпись. В режиме чтения ссылка открывается нажатием. Если цели нет, Juie предлагает создать её; если несколько заметок имеют одинаковое название, приложение предлагает выбрать, а не угадывает.

Над тегами открытой заметки показаны обратные ссылки — заметки, которые ведут на неё. Индекс строится из текста: обычный Markdown остаётся переносимым, а после импорта или восстановления связи можно построить заново.

Теги образуют дерево: слеш создаёт вложенность, например Work/Juie находится внутри Work. Ветку можно свернуть, переименовать, перетащить к другому родителю или удалить через контекстное меню; удаление тега не удаляет заметки. Новая заметка, созданная при открытом теге, получает его автоматически. Перетащив заметку на тег, вы добавите тег, а не переместите заметку: тегов у неё может быть несколько. «Без тегов» показывает заметки без единого тега. Изначально ветки закрыты. Нажатие на закрытый тег одновременно раскрывает ветку и фильтрует заметки; стрелка рядом только раскрывает и сворачивает. Общая кнопка сворачивания сначала закрывает всё, если есть открытые ветки, и лишь следующим нажатием раскрывает их.

Задачи

Задача существует сама по себе или внутри проекта; под ней может быть один уровень подзадач. Проект сам по себе не отмечается выполненным: у него есть название, спокойный собственный цвет и счётчик выполненных задач. Поле внизу проекта создаёт задачу внутри него.

Проекты можно объединить заголовками групп — например, «Работа», «Учёба», «Жизнь». Группа помогает найти проект, но не меняет доску, календарь и сами задачи. На компьютере задержите указатель в промежутке над проектом и нажмите «+ Создать группу здесь»: этот проект и следующие войдут в новую группу. На любом устройстве группу можно выбрать или написать в поле «Группа» окна редактирования проекта; очистите поле, чтобы вывести проект из группы. Перетаскивание проекта рядом с другим присоединяет его к той же группе. Нажмите название заголовка для переименования, стрелку — для сворачивания. «Удалить группу» в меню переносит её проекты в раздел выше.

Стрелка раскрывает ветку, чекбокс завершает задачу, нажатие на строку открывает отдельную страницу задачи. Она как бы вырастает из выбранной строки, а не заменяет весь экран. Перетаскиванием меняются порядок и родитель в пределах разрешённой глубины. Нельзя бросить задачу внутрь собственной ветки или создать цикл.

Кнопка поиска превращает поле новой задачи в фильтр дерева. Поиск сопоставляет названия проектов и задач: если совпала вложенная задача, остаются её родители, а остальное скрывается. Esc или повторное нажатие возвращает поле создания; незавершённый черновик в нём сохраняется.

Отметка выполнения не зависит от срока. После нажатия на чекбокс появляется день в формате YYYY.MM.DD; нажатие на него показывает точное время. Снятие отметки убирает её, а повторное завершение ставит новую дату. Запланированный и фактический дни могут различаться.

Контекстное меню задачи, где бы она ни показывалась, открывает и переименовывает её, завершает или возвращает в работу, назначает дату, создаёт итерации, архивирует и удаляет. Открытую задачу можно связать с открытой заметкой; у одной задачи может быть несколько заметок. Разрыв связи требует подтверждения.

Архивация, удаление и восстановление родителя применяются ко всей его ветке. Проект тоже уходит в архив или корзину вместе со всеми задачами и возвращается целиком.

Циклы

Обычную конечную задачу можно превратить в цикл: задать название повторения и количество итераций. Juie создаст «Раунд 1», «Раунд 2» и так далее. Итерация открывается собственной страницей, но отдельно не переименовывается: измените название повторения у цикла, чтобы переименовать все его итерации. Итерацию нельзя сделать родителем или вывести из цикла.

Цикл не смешивается с обычными подзадачами. Название и количество можно менять, пока сокращение не удалит уже использованные итерации. На доске не показываются ни цикл, ни его итерации; в календаре показываются итерации, но не сам цикл.

Доска

Доска заполняется вручную. Добавьте корневую задачу через контекстное меню, создайте её прямо в колонке или перетащите из дерева. Тем же меню задачу можно убрать с доски. Добавление и удаление подзадач не меняет участие родителя в доске; сами собой задачи сюда не попадают. Задача с подзадачами представлена одной карточкой со счётчиком вроде «3 из 7» в одной из колонок: «Сделать», «В работе», «Готово». Подзадачи, циклы и итерации не становятся отдельными карточками. Перетаскивание между колонками меняет статус, внутри колонки — ручной порядок. Задача из дерева встаёт между карточками там, где показана линия вставки; так же работает перенос задачи на день в календаре. Колонка «Готово» показывает десять последних выполненных задач. Открытие карточки на доске или в календаре ведёт туда, где задача находится: к родительской задаче для подзадачи, к проекту для корневой задачи в проекте или к «Без проекта» для самостоятельной. Нужная строка подсвечивается среди соседних.

Карточка наследует цвет проекта, чтобы работу можно было узнать ещё до чтения. В колонке можно создать задачу, открыть карточку, вызвать её меню или перетащить её в архив либо корзину правой панели. Перенос карточки в дерево задач меняет только её место в дереве — дата и статус остаются прежними.

Календарь

Календарь планирует целыми днями; почасового расписания нет. Доступны день, три дня, неделя (в виде двух недель), месяц и год — ненужные виды можно скрыть. В трёхдневном виде сегодня находится между вчера и завтра. Неделя начинается в понедельник или воскресенье, по вашему выбору. В двухнедельном виде следующая неделя показана узкой справочной полосой: её задачи можно просматривать и перемещать, но новые добавляются в текущую неделю или через другой вид календаря.

В настройках рядом с григорианским календарём можно включить вычисляемый календарь хиджры. Срок задачи хранится одним и тем же днём YYYY-MM-DD: переключение меняет только отображаемые месяцы, годы и подписи, но не планы, экспорт или синхронизацию.

Перетаскивание задачи на день назначает срок; между карточками одного дня — меняет порядок; в архив или корзину — убирает задачу. Линия показывает место будущей карточки. Перенос карточки в дерево перемещает её в дереве, не меняя срок. В недельном и месячном видах карточки слишком узкие для чекбокса, поэтому задача завершается через контекстное меню.

Длинные названия показываются там, где хватает места: две строки в дереве, пять на доске и в календарных видах дня и недели, одна в ячейке месяца. Полное название видно при наведении. Ячейка месяца содержит все задачи дня и прокручивается, если они не умещаются. Завершение задачи без срока не назначает его задним числом.

На полке «Без даты» сначала показана ближайшая незавершённая итерация каждого цикла с подписью «Цикл / Итерация», затем остальные подходящие задачи. Полка просроченного устроена так же и скрывается, когда просроченных нет. Годовой вид считает выполненные и оставшиеся задачи по дням; нажатие на название месяца открывает этот месяц.

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

Шаблоны

Заметка с тегом templates служит шаблоном. «Вставить шаблон» в контекстном меню редактора или в меню заметки на телефоне вставляет его текст в позицию курсора с новой строки и подставляет дату и время вместо {{date}} и {{time}}. Так удобно вести журнал тренировок: отдельный шаблон на каждый тип занятия, затем остаётся вставить его и записать цифры. Вложенные теги объединяют шаблоны так же, как колоды карточек.

Для заметки, которую вы только дополняете — дневника или журнала веса, — выберите «Открывать в конце» в меню заметки. Редактор поставит курсор после последней строки. Отдельная настройка «Печатная машинка» (кнопка с тремя линиями рядом с фокусом на компьютере) держит текущую строку посередине экрана. Оба выбора запоминаются для каждой заметки.

Раздел под заголовком можно свернуть. Наведите указатель на строку заголовка: в поле появится стрелка. Нажатие скрывает текст до следующего заголовка такого же или более высокого уровня и ставит после заголовка «…». Стрелка или многоточие раскрывают раздел. Свёртки запоминаются для заметки на этом устройстве.

Tab углубляет пункт списка, Shift+Tab поднимает его на уровень выше. Вне списка Tab добавляет два пробела. Чтобы уйти из редактора клавиатурой, нажмите Esc, затем Tab. Цвет у пункта списка такой же, как у обычного текста: выделяются только ссылки.

Cmd/Ctrl+F открывает поиск над текстом. Введите запрос; Enter и Shift+Enter переходят между совпадениями, счётчик показывает текущее. Справа есть переключатели регистра, целого слова и регулярного выражения; кнопка ⇄ открывает замену. Esc закрывает поиск, как и возвращение к набору в тексте.

Фокус — кнопка с точкой в круге рядом со стрелками «Назад» и «Вперёд» заметки — скрывает библиотеку, список заметок и дерево задач вместе. В шапке остаются название и инструменты заметки на тех же местах, где они были: заголовок слева, чтение, история и оглавление справа. Повторное нажатие или Esc возвращает панели. Фокус принадлежит заметке: переход из поиска к календарю или доске показывает их обычные области, а возвращение к заметке восстанавливает фокус.

Zotero

При копировании аннотаций из PDF-ридера Zotero цитаты приходят со ссылкой вида zotero://open-pdf/library/items/KEY?page=18. Juie сохраняет её: в режиме чтения и на публичной странице она откроет Zotero на нужной странице компьютера с той же синхронизированной библиотекой. Номер страницы показывается рядом со ссылкой, потому что Zotero не включает его в текст. Если автор, год и страница нужны внутри цитаты, сначала создайте заметку в Zotero: правой кнопкой по источнику → Add Note from Annotations, затем скопируйте её в формате Markdown (Settings → Export → Note format: Markdown).

Карточки

Колода — заметка с тегом cards или любым вложенным тегом. Команда «Сделать колодой» в меню заметки добавляет его. Сам текст не меняется: карточками становятся только строки с подходящей разметкой, а остальная заметка остаётся обычной. Поэтому колода может одновременно быть конспектом. Заголовки делят её на разделы.

Вложенные теги группируют колоды. Десять конспектов с тегом cards/biology появятся в виде «Карточки» как группа «biology», каждый своей колодой. У группы есть собственные «Повторить» и «Практика»; колоду можно перетащить в другую группу — изменится только тег. Колода с голым тегом cards стоит вне групп наверху. В дереве тегов cards и templates нельзя переименовать, переместить или удалить: по ним приложение находит колоды и шаблоны. Их отображаемые имена меняются в «Настройки → Интерфейс → Служебные теги», и все заметки следуют за изменением. Вложенные теги полностью ваши.

Три способа написать карточку:

Столица Казахстана :: Астана

Что такое CRDT?
?
Структура данных, которая объединяет изменения без конфликтов.

Казахская АССР образована {{26 августа 1920 года}}.

В однострочной карточке вокруг :: должны быть пробелы; запись std::vector в заметке о программировании карточкой не станет. Длинная карточка — абзац с вопросом, отдельной строкой ? и ответом. Строка с {{…}} создаёт карточку с пропуском: в вопросе вместо скрытого фрагмента виден пробел, в ответе — вся строка. Несколько пропусков в одной строке остаются одной карточкой. В режиме чтения и на публичной странице карточки колоды показываются отдельно, а пропуски подсвечиваются.

Вид «Карточки» показывает колоды и количество карточек к повторению. Сеанс идёт по шагам: вопрос, «Показать ответ», затем Не помню, С трудом или Помню. «С трудом» означает «вспомнил, но с усилием»: карточка вернётся раньше, однако не считается забытой. Забытая карточка снова появится в том же сеансе, пока вы её не вспомните. Пробел показывает ответ, ← означает «Не помню», ↓ — «С трудом», → — «Помню». У карточки с пропуском ответ заполняет его на месте.

«Практика» проходит все карточки колоды или группы, не меняя расписания. Она подходит, чтобы ещё раз пройти материал в тот же день или перед экзаменом. «Тренировать всё» находится в галерее; нажатие на колоду без карточек к повторению запускает практику. На панели заметки-колоды есть кнопка «Повторить», которая открывает этот вид сразу с нужной колодой.

Прогресс хранится в самой заметке, в конце первой строки карточки:

Столица Казахстана :: Астана // 260920 4 2

Это дата следующего повтора, интервал в днях и число забываний — всё, что нужно расписанию интервального повторения. После «Помню» интервал растёт, после «Не помню» сбрасывается; часто забываемая карточка растёт медленнее. Запись движется вместе с карточкой, если изменить вопрос, переставить карточки или скопировать заметку. Прогресс попадает в резервные копии и экспорт. В режиме чтения и на публичной странице этот хвост скрыт. Чтобы обнулить карточку, удалите его.

Канвасы

Канвасы живут в собственной галерее и не смешиваются с заметками. На бесконечной поверхности можно расположить живые карточки заметок и задач, текст, группы и связи между ними; доступны перемещение, масштаб, вписывание в экран, 100% и цвета карточек и групп. Удаление канваса из галереи подтверждается дважды и не удаляет заметки и задачи на нём.

Кнопка + на панели канваса открывает палитру: ищите заметку или задачу для размещения либо создайте её прямо здесь. Первые два результата создают заметку или задачу с введённым названием. Нажатие на карточку активирует её для редактирования; неактивная карточка заметки показывает отрисованный Markdown и легко перетаскивается. Карточка задачи показывает дерево и меняет настоящие задачи, а не копию. Открытый канвас и положение на нём сохраняются при переключении видов.

Поиск

Поле над списком заметок фильтрует этот список. Если запрос также совпадает с задачами, ниже появляется ссылка на общий поиск.

Cmd/Ctrl+K ищет заметки, задачи и названия канвасов одновременно, группируя результаты по типу. Заметка открывается в редакторе, задача — на своём месте в дереве, канвас — на поверхности. Задачу можно завершить прямо из результатов.

Импорт, экспорт и резервные копии

В «Настройки → Данные» находятся снимок .juie, экспорт Markdown и импорт папки Markdown. Файл .juie переносит структуру приложения на другое устройство. Экспорт создаёт папку с именем пространства и датой, а внутри — обычные файлы .md. Импорт подходит для хранилища Obsidian: вложенные папки становятся тегами, frontmatter и wiki-ссылки сохраняются.

Если данные есть только на этом устройстве и папка для копий не выбрана, Juie раз в три дня напоминает сохранить копию вручную. С аккаунтом напоминание не появляется: копия есть на сервере. Локальная копия всё равно полезна — она переживёт случайное удаление. Сохраните её кнопкой в разделе «Данные» или, если платформа позволяет, выберите папку для автоматических копий.

На платформах с доступом к выбранной папке автоматические копии создаются, пока приложение открыто:

Копия охватывает все читаемые пространства установки, а не только открытое. Если пространство закрыто или не читается, создание копии явно завершается ошибкой: Juie не назовёт частичный файл надёжной резервной копией. Можно импортировать и старые файлы одного пространства, и полные файлы установки. Восстановленные записи получают новые идентификаторы, чтобы более новое удаление в облаке не стёрло их снова. Поэтому то, что уже сохранилось на другом устройстве, может появиться в двух экземплярах.

На компьютере папка для копий должна быть выбрана через системный диалог; Juie запоминает разрешённую папку. Перед импортом или восстановлением сделайте ручную копию.

Команда «Выйти и удалить копию с этого устройства» сначала создаёт проверенную копию для скачивания, а уже затем останавливает синхронизацию и удаляет локальные базы. Если копию создать не удалось, ничего не удаляется, и приложение сообщает причину.

Аккаунт, пространства и шифрование

Juie работает вообще без аккаунта: на первом экране можно выбрать «Только это устройство». Ничего не уходит с него, а пространство защищено заданным вами паролем.

Аккаунт Juie нужен, чтобы заметки были на нескольких устройствах. Логин вы придумываете сами, без имени и почты. Из него получается идентификатор входа вроде login-1234; четыре цифры добавляются всем, чтобы идентификаторы выглядели одинаково. Запишите его: на новом устройстве входите именно по нему.

Пароль не попадает на сервер. Из него на устройстве выводятся два разных ключа: один подтверждает вход, другой защищает ваши ключи и никогда не покидает устройство. Сервер не может прочитать хранимое, даже имея всё, что у него есть.

Фраза из двенадцати слов показывается один раз при регистрации. Запишите её отдельно от устройства: ни Juie, ни сервер не смогут восстановить её за вас. Она помогает открыть устройство без изменения аккаунта и отдельно — сбросить забытый пароль. На экране входа это разные действия.

На новое устройство не нужно переносить файлы. Введите идентификатор и пароль — ключ каждого пространства восстановится. Файлы ключей, нужные старым версиям, больше не требуются.

У каждого пространства собственный случайный главный ключ. Локальные базы, поисковый индекс и синхронизируемые изменения зашифрованы AES-GCM; названия документов заменены хешами, поэтому сервер не видит даже заголовков. Он видит только аккаунт, размеры и время операций.

Разблокировка работает без сети: пароль проверяется на устройстве, и уже известные ему пространства открываются без сервера.

На компьютере закрытие окна не завершает Juie, поэтому пароль снова спрашивается лишь после настоящего выхода или перезапуска. В Windows окно уходит в трей: нажмите значок, чтобы вернуть его, или «Выйти из Juie» в меню значка. На macOS приложение остаётся в Dock; Cmd+Q завершает его.

На Android пароль можно заменить отпечатком пальца. На экране разблокировки включите «В следующий раз открывать отпечатком» и один раз подтвердите отпечатком. Пароль останется на телефоне, зашифрованный ключом, который система выдаёт только после проверки отпечатка; наружу он не отправляется. Если отпечатки на телефоне или пароль изменятся, пароль потребуется ещё раз. Функция выключается в «Настройки → Пространство».

Пространства принадлежат аккаунту. Пространство, созданное на одном устройстве, появляется на других при следующей разблокировке или сразу после открытия переключателя пространств. Удаление убирает пространство из аккаунта, поэтому требует связи с сервером и без неё не выполняется. На других устройствах оно исчезает из списка при следующей разблокировке, но не стирается с диска сразу. Тридцать дней оно лежит в «Настройки → Пространства» с пометкой «Удалено на другом устройстве»: там его можно восстановить как пространство только этого устройства или удалить немедленно. После срока оно стирается окончательно. Перед удалением ключа Juie стирает документы пространства на сервере; прерванное удаление повторяется после следующего входа. Закрытое пространство, впервые увиденное старой версией, иногда нужно один раз открыть: текущая версия запишет список его зашифрованных документов, не раскрывая серверу их названий.

Аккаунт можно удалить самостоятельно в «Настройки → Аккаунт», подтвердив паролем. Заметки, ключи, устройства и публичные страницы удаляются без возможности отмены. Выход — другое действие: он не трогает облако и другие устройства и может сохранить или удалить заметки с текущего устройства.

Неиспользуемые аккаунты со временем удаляются. У аккаунта нет почты, поэтому предупредить письмом некого — предупреждаем здесь. Аккаунт с данными удаляется после двух лет без входа с любого устройства; пустой аккаунт, в котором есть только логин и не создано ни одного пространства, — после девяноста дней. Удаляется серверная копия, устройства и публичные страницы; заметки на самих устройствах остаются. Один вход начинает отсчёт заново. Удаление не автоматическое: оператор просматривает список и удаляет вручную, поэтому аккаунт не исчезает ровно в день истечения срока.

Пространства, созданные старыми версиями без пароля, не переписываются и не шифруются незаметно: преобразование могло бы повредить уже существующие данные.

Если локальное хранилище выходит из строя, Juie не делает вид, что сохраняет правки: блокирует изменения и синхронизацию и явно показывает режим только для чтения.

PIN блокирует уже открытую программу после одной, двух, пяти или тридцати минут без действий внутри Juie. Сам переход в другое приложение её не блокирует: быстро вернулись — продолжаете работу, позже — вводите PIN. Он защищает интерфейс, а не пространство. Для выключения нужен действующий PIN.

Синхронизация

Синхронизация связывает ваши устройства через сервер-посредник, который не умеет читать содержимое. Данные сжимаются до шифрования, поэтому заметка передаётся в несколько раз компактнее своей сырой истории редактирования.

При переподключении Juie не отправляет повторно документ, точное состояние которого сервер уже подтвердил. История даже не открытых заметок сворачивается небольшими фоновыми порциями. Настраивать или чистить это вручную не нужно. Клиент и сервер должны быть актуальными: со старым сервером или при сомнительном подтверждении доставки Juie отправит данные повторно, чтобы не рисковать потерей правок.

Зелёный индикатор синхронизации означает, что сервер получил изменения. Если он красный, наведите указатель: подсказка скажет, сервер недоступен, отклонил соединение или отказался хранить данные.

Обновления

«Настройки → Обновления» показывает текущую версию и проверяет новую только по вашему нажатию, а не автоматически: запрос сообщает juie.net ваш адрес. Если версия есть, вторая кнопка установит её. Установленная программа обновится и перезапустится; переносная заменит свой juie.exe и перезапустится; на Android откроется системный установщик APK для вашего подтверждения. Подпись каждого файла сверяется с ключом, встроенным в приложение, прежде чем что-либо будет заменено. Веб-версию обновлять не нужно.

Где хранятся данные

В браузере данные лежат в IndexedDB и привязаны к его профилю и адресу сайта. Встроенный браузер, внешний браузер и нативное приложение поэтому видят разные локальные базы, пока вы не включите синхронизацию или не перенесёте снимок. На компьютере и Android используется хранилище нативного приложения.

Всё сохраняется автоматически. Данные списка обновляются с небольшой паузой после набора, чтобы интерфейс не перерисовывался после каждой буквы.

Обновление и переустановка в Windows

Программа и данные живут отдельно: приложение — в %LOCALAPPDATA%\Juie, база — в профиле %LOCALAPPDATA%\app.juie.desktop. При обычном обновлении экспорт и импорт не нужны.

У каждого выпуска Windows два установочных файла:

Перед обновлением закройте Juie. Хотя программа и данные разделены, перед важным обновлением полезно вручную сохранить .juie — на случай поломки диска, случайного нажатия или утраты устройства. Обычно эта копия не понадобится. Для закрытого пространства отдельно храните фразу восстановления или файл ключа с другого устройства.

Запускайте установщик двойным щелчком в Проводнике Windows. Если запустить его из изолированной среды помощника, он может оказаться в виртуализированном профиле и показать другую локальную базу, хотя настоящие данные не удалены.

Переносная версия Windows

juie.exe из выпуска работает без установки и не пишет ничего вне своей папки — ни в реестр, ни в %LOCALAPPDATA%. При первом запуске рядом создаётся папка Juie Data: в ней лежат база, защищённые ключи, поисковый индекс, профиль браузерного движка и собственные снимки. Папку можно перенести на флешке и открыть на другом компьютере с тем же паролем: ключи защищены паролем, а не привязаны к машине.

Для обновления замените juie.exe. Рядом с одной папкой данных могут лежать две версии программы, но старой версии запрещено открывать данные, уже записанные новой. Она скажет об этом прямо, а не продолжит работать поверх несовместимой базы.

Флешку можно вынуть во время записи, а база браузерного движка к такому не приспособлена: обнаружив повреждение, он может сбросить её. Поэтому переносная версия после каждой паузы в работе пишет зашифрованный снимок в Juie Data/Backups и хранит три последних. Если база не открывается, запустите juie.exe и выберите «Подключить существующее хранилище» с новейшим файлом .juiex. Снимок содержит собственные ключи и открывается прежним паролем; старый компьютер не нужен. С аккаунтом такие снимки не создаются, поскольку копия уже есть на сервере.

Переносная версия не может унести с собой WebView2 — браузерный движок Windows. Обычно он уже есть в Windows 10 и 11; если его нет, Juie покажет ссылку на установщик Microsoft. Движок устанавливается один раз на весь компьютер. Сама Windows всё равно может оставлять следы запуска программы — недавние файлы, prefetch; приложение не может этому помешать.

Платформы и ограничения этой версии

Juie собирается для macOS, Android и Windows из одного проекта Tauri и работает в браузере на app.juie.net. На macOS пустая часть заголовка окна позволяет его перетаскивать; двойной щелчок разворачивает окно, но не переводит его в полноэкранный режим.

Открытая регистрация на публичном сервере пока выключена. Рисование на канвасе, вложения, хранение изображений, плагины и совместное редактирование одной заметки несколькими людьми не планируются.


Это руководство — часть продукта. Когда поведение Juie меняется, текст обновляется вместе с кодом и патчноутами.