Как я сделал PWA-приложение для заметок и ссылок за вечер (и почему оно работает без интернета)
Проблема
Я заметил, что постоянно сохраняю ссылки в «Избранном» браузера или пишу сам себе в Telegram. А потом трачу кучу времени, чтобы найти нужное.
Существующие решения - Notion, Evernote, Google Keep - либо перегружены функциями, либо требуют регистрации и интернета.
Решение
Я сделал KylikLink - минималистичное приложение для заметок и ссылок.
- Без регистрации - данные хранятся только на устройстве
- Работает оффлайн - открывается без интернета
- Устанавливается на телефон - через браузер, как нативное приложение
- Перенос заметок между устройствами - экспорт/импорт через JSON
- Корзина с восстановлением - удалённые заметки хранятся 30 дней
- Поиск, закрепление, редактирование - всё, что нужно
👉 Ссылка: https://kyliklink.ru
Как устроено
Это PWA (Progressive Web App). Весь код - на чистом HTML/CSS/JS, без фреймворков.
Оффлайн-режим - Service Worker кэширует все файлы при первом открытии
Хранение - localStorage (заметки и корзина)
Перенос заметок между устройствами - ручной экспорт/импорт (никакого облака)
Сложности, которые решил
Не потерять заметки при обновлении - добавил миграцию данных из старых версий
Корзина с автоочисткой - заметки удаляются через 30 дней
PWA-обновления - принудительная активация нового Service Worker
Что в планах (версия 2.0)
PIN-код на отдельные заметки - любая заметка может быть защищена PIN-кодом.
Напоминания - push-уведомления о важных заметках в нужное время.
Чеклисты - заметки в виде списка дел с галочками.
Голосовые заметки - запись голосом вместо текста.
Заключение
KylikLink - это пример того, как простое PWA-приложение может решать реальную задачу без сложной инфраструктуры, серверов и регистраций. Оно работает оффлайн, устанавливается на телефон и не отправляет ваши данные в облако.
Приложение уже работает, и его можно установить на телефон.
Приложение создано одним человеком в свободное время. Если найдутся баги или идеи - пишите в комментарии.