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

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

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

Фронт: Добавить автовыведение типов в Nano Stores I18n

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

Nano Stores I18n имеет функцию param() для создания строк перевода, в которых есть параметры:

export const messages = i18n('post', {
  published: params<{ at: string }>('Was published at {at}')
})

Сейчас нужно явно указывать (через <{ at: string }>), какие параметры есть в строке перевода.

Но новый TypeScript умеет парсить строки и выводить типы из них.

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

  1. Изучите, как мы сделали похожее в Nano Stores Router.
  2. Форкните проект.
  3. Добавьте автовыведение типов в param().
  4. Добавьте тесты.
  5. Отправьте пулл-реквест.