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

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

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

Фронт: Добавить в postcss-dark-theme-class поддержку light-dark()

Для новичков, задача на пару дней

postcss-dark-theme-class позволяет переключать тему сайта через установку HTML-класса в JS и описывать в CSS темную тему в @media (prefers-color-scheme: dark).

В CSS скоро добавится новый способ указывать варианты для светлой и темной темы через light-dark():

a {
  color: light-dark(black, white);
}

Нужно добавить в плагин поддержку этой новой функции, чтобы плагин генерировал CSS вида:

:where(html.is-dark) a {
  color: black;
}
:where(html.is-dark) a {
  color: white;
}

Польза: строка в резюме с PR в популярный проект.

  1. Форкнуть репозиторий.
  2. Изучить как работает плагин. Изучить как писать плагины для PostCSS.
  3. Добавить тесты на light-dark().
  4. Добавить поддержку light-dark() в плагин.
  5. Учесть и ситуацию a → :where(html.is-dark) a и html → html:where(.is-dark).
  6. Добавить light-dark() в пример в README.md.
  7. Отправить PR.