Открытый код · MIT · На своём сервере

Все ваши подписки —
в одном журнале.

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

Обзор Calends: месячные расходы, распределение подписок и хронология списаний
Обзор Calends на телефоне

Подписки

Любая подписка, любой период

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

Периоды оплаты и история цен
Подписки в виде карточек
Подписки в виде карточек

Календарь

Когда и сколько спишется

Просматривайте списания по дням за месяц или общую картину за год. Добавьте закрытую ICS-подписку в календарь Apple или Google и получайте напоминания перед списанием в удобное время.

Календарь и правила напоминаний
Месячный календарь со списаниями
Месячный календарь со списаниями

Отчёты

Понятно, куда уходят деньги

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

Как рассчитываются показатели
Отчёты: динамика расходов, изменения за месяц и проверка
Отчёты: динамика расходов, изменения за месяц и проверка

Кошелёк

Каждая карта, каждый остаток

Банковские карты, баланс App Store по регионам, предоплаченные SIM-карты и средства на счетах магазинов. Calends рассчитает, на сколько списаний хватит остатка и когда его пополнить.

Кошелёк и срок до пополнения
Кошелёк: способы оплаты и прогноз остатка
Кошелёк: способы оплаты и прогноз остатка

Совместные подписки и оплата за друзей

Разделить расходы, вернуть деньги

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

Совместные подписки

Доли участников, суммы к получению и чистые расходы за год.

Совместные подписки: участники и суммы к получению

Оплата за друзей

Платите за друга, получайте возврат за каждый период и отслеживайте разницу.

Оплата за друзей: оплачено, возвращено и осталось получить
Как рассчитываются совместные подписки

Встроенный помощник

Вставьте чек — получите черновик

Вставьте чек App Store, банковское СМС или снимок страницы оплаты. Помощник определит название, цену, период и способ оплаты, проверит повторы и подготовит черновик. Запись попадёт в журнал только после подтверждения.

  • Текст, снимки экрана или всё вместе
  • Сначала черновик, сохранение — после подтверждения
  • Или просто спросите: сколько я заплачу в этом месяце?

Используется ваш ключ API DeepSeek. Он хранится только на вашем сервере.

Встроенный помощник
Помощник: черновик подписки по вставленному чеку

Подключение ИИ

Ваш привычный ИИ может читать и менять журнал

В Calends встроен MCP-сервер. Подключите Claude Code, Codex, Cursor или Grok Bot и спросите «Что продлевается на следующей неделе?» или скажите «С сегодняшнего дня Netflix стоит 17,99 доллара США».

  • Claude Code
  • Codex
  • Cursor
  • Gemini CLI
  • Grok Bot
Какие подписки продлеваются на следующей неделе?
Три: Spotify (воскресенье), iCloud+ (понедельник), ChatGPT Plus (вторник). Все оплачиваются с карты по умолчанию.
С сегодняшнего дня Netflix стоит 17,99 доллара США.
Изменение записано: 15,49 → 17,99 доллара США с сегодняшнего дня. Прошлые списания не изменены.
Подключение MCP и список инструментов
Страница подключения: выбор помощника и копирование настроек
Страница подключения: выбор помощника и копирование настроек

Напоминания

До списания — туда, где вы увидите

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

  • Email
  • Telegram
  • Lark
  • DingTalk
  • WeCom
  • Slack
  • Discord
  • Bark
  • ntfy
  • ServerChan
  • Webhook
Настройка каналов уведомлений

Публичная страница

Делитесь, если хотите

Необязательная страница только для чтения. Вы выбираете видимые подписки, а конфиденциальные данные скрываются на сервере. Аватар и заголовок тоже можно изменить.

Публичная страница: месячные расходы и шкала времени

Свой сервер

Установите там, где удобно

Без регистрации и абонентской платы. Код открыт, а данные остаются только на вашей установке.

Cloudflare

Рекомендуем

Workers + D1. Бесплатного лимита достаточно для личного использования.

git clone https://github.com/imetn/calends
cd calends
npm ci
npx wrangler login
npx wrangler secret put SETUP_TOKEN
npm run deploy

Затем откройте /admin, введите токен первоначальной настройки и задайте пароль.

Развернуть

Docker

На любом компьютере

NAS, VPS или домашний компьютер. Данные хранятся в одном файле SQLite.

docker run -d --name calends \
  -p 8787:8787 -v calends-data:/data \
  ghcr.io/imetn/calends:latest
docker logs calends

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

Поручите установку ИИ-помощнику

Вставьте этот текст в Claude Code, Codex или Cursor. Помощник спросит, где развернуть приложение, и пройдёт все шаги.

Разверни Calends (https://github.com/imetn/calends) — самостоятельно размещаемый учёт подписок:
1. Спроси, что я выбираю — Cloudflare Workers или Docker, и разверни по README.
2. Сообщи адрес и токен первичной настройки и подожди, пока я задам пароль.
3. Создай токен на чтение и запись на странице подключения и подключи Calends к себе по MCP.
4. Просмотри мою почту, найди все чеки и уведомления о продлении подписок и оформи их как подписки (название, цена, валюта, период, дата начала, способ оплаты). Каждую сначала покажи через dry_run на подтверждение, потом добавляй.
Полное руководство по установке

Ваш журнал принадлежит вам

Лицензия MIT

Весь код на GitHub. Свободно используйте, изменяйте и распространяйте.

Без центрального сервера

Данные хранятся в вашей базе D1 или файле SQLite.

Без аналитики использования в приложении

Внешние запросы — только к открытым курсам валют и настроенным вами ИИ и каналам уведомлений.

Данные всегда можно забрать

Полная резервная копия и восстановление в JSON, импорт и экспорт в CSV.

Начните вести учёт подписок сегодня.

Пять минут на установку. Затем каждое списание под контролем.