Политика приватности Naminori

Обновлено: 2026-07-04. Контакт: hello@naminori.fun

Naminori — сервис для изучения японского языка (сайт naminori.fun, браузерное расширение и публичное API v1). Мы обрабатываем минимум данных, необходимый для работы сервиса, и не продаём их третьим сторонам. Этот документ описывает, что именно собирается, где хранится и кому передаётся.

1. Данные, которые вы предоставляете аккаунту

  • Email и пароль — для входа. Пароль хранится в виде хэша (bcrypt), в открытом виде мы его не видим.
  • Отображаемое имя, аватар, публичный slug — по вашему желанию, для профиля и лидерборда. Профиль по умолчанию НЕ публичен.
  • Настройки обучения (целевой уровень, лимиты повторений, тема, голос озвучки и т.п.) — привязаны к аккаунту.

2. Данные обучения (SRS)

Мы храним состояние ваших карточек по алгоритму FSRS: время следующего повторения, стабильность, история ответов (лог «правильно/неправильно» и время), очередь на день. Эти данные используются только для расчёта расписания повторений и вашей личной статистики.

3. Пользовательский контент

  • Пользовательские примеры и заметки — если вы сохраняете свой пример к грамматике или заметку к карточке, они привязаны к вашему аккаунту. Если вы явно «загружаете в сообщество», пример становится виден другим пользователям.
  • Майнинг-контекст — при добавлении слова из YouTube, книги, манги или расширения мы сохраняем предложение-контекст и, при наличии, ссылку на источник (id видео с таймкодом, id главы книги, страница манги). Аудио/скриншоты сцен генерируются на сервере по вашему запросу и хранятся привязанными к вашим карточкам.

4. Браузерное расширение (Naminori)

Расширение хранит на устройстве и не отправляет никуда, кроме сервера Naminori:

  • Токен API (введён вами в настройках) — в chrome.storage.sync. Используется только для запросов к naminori.fun/api/*. Не передаётся сторонним доменам.
  • Кэш переводов — в chrome.storage.local (до нескольких сотен слов). Локально, не синхронизируется.
  • Локальные словари Yomitan — импортированные пользователем zip-архивы хранятся в IndexedDB расширения. Полностью локально; лук-ап в режиме «Локальный» никогда не выходит из браузера.

Что расширение отправляет на сервер Naminori (https://naminori.fun):

  • В режимах «Серверный/Гибрид» — выделенный/наведённый текст (несколько символов) → /api/v1/lookup для перевода.
  • При добавлении карточки — слово, чтение, перевод, а также предложение-контекст, если оно было на странице; при желании — скриншот сцены YouTube.
  • При воспроизведении озвучки — запрошенный текст → /api/v1/audio.

Расширение не собирает историю посещений, содержимое страниц (кроме короткого текста, который вы явно наводите/выделяете), куки, пароли или данные форм. Оно не встраивает трекеры и не подключается к сторонним аналитикам.

Разрешения manifest объяснены так:

  • storage — сохранить токен и настройки.
  • offscreen — держать «тёплое» IndexedDB-подключение для мгновенного локального лук-апа.
  • host_permissions: https://naminori.fun/* — запросы к нашему API.
  • content_scripts: <all_urls> — фича перевода по наведению должна работать на любой странице с японским текстом (аниме-сабы, статьи, соцсети). Скрипт активируется только на выделении/наведении и никогда не считывает страницу целиком.

5. Публичное API v1

API работает по персональному Bearer-токену. В базе хранится только его SHA-256-хэш, plaintext-токен показывается один раз при создании и не восстанавливается. Каждый запрос ограничен по частоте (rate-limit), деструктивные операции через API невозможны (удаление аккаунта, карточек, настроек). Полный список эндпоинтов — на /developers.

6. Что не собираем

  • Историю посещённых страниц и их содержимое.
  • Данные банковских карт (оплаты пока нет).
  • Точное местоположение, идентификаторы устройств, отпечатки браузера.
  • Данные детей до 13 лет (сервис для них не предназначен; при обнаружении такой учётной записи она будет удалена).

7. Куда передаём данные

  • Собственный VPS (одна физическая машина, ЕС) — там крутится приложение и Postgres. Резервные копии — в том же датацентре.
  • Google Gemini — только для функций, которые вы инициируете (генерация примеров, разбор ошибок, AI-практика). При вызове передаётся минимум контекста задачи; ответы не используются для обучения моделей (стандартный API-режим Google).
  • Microsoft Edge TTS — стриминг синтеза речи по конкретному тексту, без привязки к аккаунту.
  • Внешние сервисы вроде YouTube — если вы запускаете майнинг видео, мы обращаемся к YouTube за субтитрами; ссылка передаётся в открытом виде.

Продажа данных третьим сторонам не производится.

8. Хранение и удаление

Учебные данные хранятся, пока существует ваш аккаунт. Написать на hello@naminori.fun — и мы удалим аккаунт со всеми привязанными данными в течение 30 дней (кроме того, что нужно по закону хранить в логах — например, факт запроса на удаление). Отдельно можно попросить экспорт своих карточек и логов повторений.

9. Изменения

Существенные изменения этой политики публикуются на этой странице с обновлением даты выше и, при регистрации/входе, уведомлением в интерфейсе.

10. Контакт

Вопросы, запросы на удаление или экспорт данных — hello@naminori.fun.