Pull to refresh

Comments 22

Я правильно понимаю, что без приложения я файл с заметками прочитать не смогу? В отличие от обсидиан/логсек.

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

Скорее имелось ввиду, что Обсидиан хранит простые Markdown которые можно просто открыть и поглядеть без софта. В этом то и прелесть таких хранилищ.

А, я понял, да, ну пока это приложение на самой ранней стадии своего развития, постепенно буду улучшать его.

Я имел в виду именно хранение в текстовом формате, а не экспорт. Это вроде как не улучшение - это изначальная идея хранения в читабельных файлах.

И в целом по статье я не особенно понял, чем ваша программа лучше обсидиан? Размером?

Вы правы, читаемые файлы - это база. Но KylikLink - это PWA: открыл в браузере на любом устройстве без установки, написал заметку. Service Worker сохраняет всё локально - закрывайте вкладку, выключайте интернет, заметки никуда не денутся. А экспорт/импорт через JSON нужен, чтобы перенести их на другой компьютер/устройство или в другой браузер. Без облаков, без регистраций, без установки. Это сильное преимущество перед обычными веб-приложениями. Просто другой сценарий, не замена Obsidian.

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

*p.s. только вот до этого момента я не знал что такое PWA. Пришлось загуглить. Если вы целитесь в большую ЦА, чем гики, то наверное стоит расписывать и для остальных

Спасибо за развёрнутый комментарий и честную обратную связь! Вы абсолютно правы: для сценария «скинуть ссылку / заметку «купить хлеб» с синхронизацией через облако Viber и другие мессенджеры работают отлично, привычно и не требуют ничего нового. И да, я согласен - если человек не знает, что такое PWA, фраза «это PWA» ничего не объясняет. Исправлюсь - в следующих постах.

Почему я вообще сделал KylikLink и чем он может быть полезен (не вместо Viber, а в дополнение):

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

  2. Не исчезнет, если заблокируют - в отличие от Viber (вы сами упомянули про блокировку в РФ), мой сервис не требует интернета после того, как открыл. Даже если провайдер отрежет пол-интернета - свои записи вы увидите. Ваши данные физически лежат в вашем браузере, а не на чужом сервере.

  3. Экспорт/импорт JSON - это не для ежедневного использования, а для «миграции». Например, вы работали дома в Chrome, пришли в офис в Firefox или на другой ноутбук - за 10 секунд перенесли все заметки. Никакой облачный синхронизатор не нужен, и никто не прочитает ваши «купить хлеб» по пути.

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

Осталось понять - чем оно лучше дефолтного приложения "Заметки" на любой платформе, если синхронизации все равно нет. Лично у себя давно поднят nextcloud, использую для указанных целей его приложение Заметки, синхронизируется между устройствами, доступно в себе через браузер. Понятно, что для простых заметок никто не будет подумать целое облако, тут вопрос, скорее, в ЦА ну и в первом вопросе в моем комментарии. В качестве упражнения норм, но если хочется пользоваться не только самому, то нужно понять - для кого это приложение написано. Удачи в начинаниях.

Вопросы действительно ключевые. Отвечаю.

  • «Чем оно лучше дефолтного приложения “Заметки” на любой платформе, если синхронизации всё равно нет?»

Коротко: ничем, если вам нужна синхронизация. И я не пытаюсь убеждать, что KylikLink «лучше» встроенных заметок.

Но есть несколько сценариев, где оно может быть удобнее именно для некоторых людей:

- Кроссплатформенность без привязки к экосистеме

Встроенные заметки на iOS не работают на Android, а на Android - на Windows и т.д. PWA работает везде одинаково: открыл браузер - установил приложение - пользуешься. Неважно, у тебя iPhone, Samsung или ноутбук с Linux.

- Приватность без регистрации

Встроенные заметки часто завязаны на iCloud, Google Drive или аккаунт Microsoft. У меня нет ни облака, ни сервера, ни сбора данных. Заметки физически не покидают устройство. Для кого-то это не плюс, а минус, для кого-то - принципиальная вещь.

- Простота и отсутствие лишнего

KylikLink намеренно минималистичен: ссылки, текст, закрепление, поиск, корзина. Это не «лучше», это просто «по-другому».

  • «Лично у себя давно поднят nextcloud…»

Вы абсолютно правы. Если у человека уже есть Nextcloud, Obsidian с синхронизацией или аналоги - KylikLink не нужен. Это инструмент не для гиков с собственной инфраструктурой, а для тех, кто не хочет ничего поднимать и настраивать.

  • «В качестве упражнения норм, но если хочется пользоваться не только самому, то нужно понять - для кого это приложение написано»

Согласен на 100%. Сейчас я вижу ЦА так:

  • Люди, которые не хотят регистрироваться нигде, но хотят сохранять ссылки и заметки в одном месте.

  • Пользователи, которым важно, чтобы данные не уходили в облако.

  • Те, кто переходит между устройствами и экосистемами и не хочет привязываться к iCloud / Google / Microsoft.

  • Люди, которым нужен максимально простой инструмент без настройки.

Ещё раз спасибо за честный фидбек - именно такие комментарии помогают лучше понять, куда двигаться. Удачи и вам в проектах 🙌

Скажите, а у вас nextcloud поднят на домашнем сервере? Как происходит синхронизация за провайдерским нат?

Нет, Nextcloud не используется. KylikLink не синхронизирует заметки через облако - только ручной экспорт/импорт. Поэтому проблем с NAT, провайдерами и серверами просто нет. Всё работает локально на устройстве пользователя.

Осталось освоить indexedDB и импорт/экспорт в файл.

При экспорте/импорте странное поведение.

На примере делаю экспорт, потом импорт и в JSON меняю text или pinned. Т.е. что-то изменил на другом устройстве. Импорт пишем "Новых записей нет" и ничего не обновляется.

Так же неплохо бы приложить ссылку на исходники.

А зачем вы в JSON меняете text или pinned?:) Ничего не нужно менять. Это перенос между устройствами/браузерами. Если вы хотите одну и ту же заметку импортировать на тоже самое устройство/браузер, то так не получится. Это не баг, а особенность логики умного импорта.

Ок, объясню нагляднее.

Есть 2 устройства. Заметки полностью одинаковые. На 1 устройстве закрепляю заметку. Делаю экспорт с 1 устройства. Файл не меняю и передаю на 2 устройство. На 2 устройстве делаю импорт.

Итог: на 1 устройстве заметка закреплена, на 2 - нет.

Я перепроверил код - закрепление (pinned) сохраняется в JSON и восстанавливается при импорте. То есть на втором устройстве заметка тоже должна оказаться закреплённой, если она была закреплена на первом, даже если на двух устройствах абсолютно одинаковые заметки.

Нет.

Открыл 2 разных браузера, проверил - не работает.

Закрепление сохраняется в JSON, но не обновляет существующую заметку при импорте. Надо не код проверять, а провести простой тест.

Но я проводил тест и у меня всё работает корректно.

Зумеры изобрели заметки от apple)

Браузер может по нехватке места чистить кеш, и индекс дБ в идеале всё же где то сохранить, например тут

https://t.me/mol_news/226

Как раз и делиться можно будет и авторизацию добавить

И бэк писать не нужно

И сервер покупать не нужно

Я так понял это пет проект начинающего фронтенд разработчика, если так то у меня вопросы по технической части, думаю тебе самому будет интересно разобрать каждый вопрос:
- Как решаешь вопрос с ограниченностью localStorage (разные браузеры по разному могут поступать с переполненным localStorage и самое интересное у каждого свое представление переполненности)?
- От фреймворков отказался осознанно и если да то почему?
- Почему скрипт прописал внутри тега script а не в отдельном файле .js например?

Sign up to leave a comment.

Articles