Нам нужны твои мозги

Хотите расти как разработчик и найти крутую работу? Не протирайте штаны — займитесь Open Source проектами. Так легче всего попасть в лучшие команды разработчиков и положить себе в резюме настоящий проект, вместо нелепых «примеров кода». Но найти подходящий проект для участия сложно. Начинаются лень и отговорки, а за ними — отсутствие профессионального роста, критики по-настоящему крутых программистов, уныние и застой.

На Cult of Martians мы собираем интересные задачи для современных веб-программистов. Можно выбрать подходящую по сложности, продолжительности и специализации. Задачи не выдуманы «из воздуха» — каждая решает насущную проблему, и решить ее можно через создание нового Open Source проекта или улучшение существующего. Решайте задачи, прокачивайтесь, присылайте решение на оценку. Лучших могут пригласить к себе на работу компании, программистам которых понравится ваше решение.

Фронт: Добавить поддержку BFcache в Nano Stores Persistent

Для уверенных в себе, задача на день

Nano Stores Persistent — умный стор, который синхронизирует данные с localStorage.

В современных браузерах есть Back-Forward Cache, который позволяет восстанавливать страницу из кэша при нажатии кнопок Назад/Вперед. Он сохраняет на диск снимок памяти страницы и при нажатии Назад мгновенно показывает страницу из кэша.

Но если на следующей странице пользователь изменил что-то в localStorage, то при нажатии Назад страница восстановится из кэша, но данные в умном сторе останутся старыми. Нужно добавить среду для тестирования и событие pageshow, которое будет доставать обновление из localStorage.

Польза: строка в резюме, которая доказывает знание продвинутых инструментов TypeScript.

  1. Форкнуть проект.
  2. Придумать, как тестировать BFcache. Например, можно сделать страницу на Vite, как у нас в Nano Store I18n.
  3. Добавить pageshow событие в умный стор.
  4. Добавить тесты.
  5. Отправить PR.