Svelte представляет собой новый способ создания веб-приложений. Это компилятор, который преобразует ваши декларативные компоненты в эффективный JavaScript, который точно обновляет DOM.
Сайт Open Source Guides предлагает коллекцию ресурсов для индивидуумов, сообществ и компаний. Эти ресурсы помогают людям, желающим узнать, как запустить и внести свой вклад в открытые проекты. Вкладчики и новички в области открытого программного обеспечения найдут следующие руководства особенно полезными:
Есть множество способов внести свой вклад в Svelte, многие из которых не требуют написания кода. Вот несколько идей, чтобы начать:
Вклады очень приветствуются. Если вы считаете, что вам нужна помощь в планировании вашего вклада, пожалуйста, свяжитесь с нами на Discord по адресу svelte.dev/chat и скажите, что вы ищете немного помощи.
Один из отличных способов внести свой вклад в проект без написания кода — помочь сортировать задачи и вытягивать запросы, когда они приходят.
Если вы хотите предложить реализацию крупной новой функции или изменений, пожалуйста, создайте RFC, чтобы обсудить это заранее.
Когда вы решаетесь внести свой вклад, возможно, стоит взглянуть на нашу карту. Команда Svelte обычно работает над одним основным проектом за раз. Это имеет несколько преимуществ для нас как поддерживателей. Во-первых, это позволяет нам сосредоточиться и делать заметный прогресс в определенной области, будучи проактивными вместо реактивных. Во-вторых, это позволяет нам рассматривать связанные задачи и запросы на вытягивание вместе. Batching задач и запросов на вытягивание позволяет нам гарантировать, что реализации и исправления учитывают все наборы проблем и случаев использования, встречающихся у наших пользователей.
Поддерживатели собираются на последнее субботнее утро каждого месяца. Хотя эти встречи не являются общедоступными, мы сообщаем обратно, оставляя комментарий на каждой обсуждаемой задаче. Мы обычно обсуждаем предметы, соответствующие нашей карте, но значительные запросы на вытягивание, требующие обсуждения среди поддерживателей, могут быть добавлены в повестку дня ежемесячной встречи поддерживателей. Однако мы обычно можем затронуть лишь пару пунктов, не соответствующих нашему текущему приоритету.
Мы делаем все возможное, чтобы проверять запросы на вытягивание и RFC, как только они отправляются, но это сложно поддерживать. Мы приветствуем помощь в проверке запросов на вытягивание, RFC и задач. Если элемент соответствует текущему приоритету на нашей карте, он более вероятен быть проверенным быстро. Запросы на вытягивание к наиболее важным и активным репозиториям проверяются быстрее, в то время как запросы на вытягивание к меньшим неактивным репозиториям могут некоторое время находиться в состоянии ожидания перед тем, как мы периодически проверяем ожидающие запросы на вытягивание.
Мы используем GitHub Issues для наших общественных ошибок. Если вы хотите сообщить о проблеме, взгляните вокруг и убедитесь, что кто-то еще не открыл задачу на эту проблему. Если вы уверены, что это новая ранее не сообщенная ошибка, вы можете отправить сообщение об ошибке.
Если у вас есть вопросы по использованию Svelte, свяжитесь с нами на Discord по адресу svelte.dev/chat, и мы сделаем все возможное, чтобы ответить на ваши вопросы.
Если вы видите что-либо, что хотели бы реализовать, создайте запрос на функцию.
Если вы хотите запросить новую функцию или улучшение, но пока не думаете о том, чтобы открыть запрос на вытягивание, вы также можете открыть задачу с шаблона функции.
Если вы только исправляете ошибку, вполне допустимо отправить запрос на вытягивание сразу, но мы все же рекомендуем вам открыть задачу, подробно описывающую, что вы исправили. Это полезно в случае, если мы не примем конкретное исправление, но хотим следить за этой задачей.
Маленькие запросы на вытягивание гораздо легче проверяются и имеют больше шансов быть принятыми.
Убедитесь, что у вас установлен pnpm. После клонирования репозитория выполните команду pnpm install
.
Чтобы построить UMD версию svelte/compiler
(это необходимо только для потребителей CommonJS или браузерного использования), выполните команду pnpm build
внутри packages/svelte
. Чтобы перестроить каждый раз, когда меняются исходные файлы, выполните команду pnpm dev
.
Ответвите репозиторий и создайте свою ветку из main
. Если вы никогда раньше не отправляли запрос на вытягивание GitHub, вы можете узнать, как это сделать, из этого бесплатного видеопособия.
Хороший план тестирования включает точные команды, которые вы выполнили, и их вывод, а также предоставляет скриншоты или видео, если запрос на вытягивание изменяет интерфейс пользователя.
Все тесты расположены в папке /test
.
Примеры тестов хранятся в папке /test/xxx/samples
.
ПРЕДУСЛОВИЕ: Установите chromium через playwright, выполнив команду
pnpm playwright install chromium
Для выполнения теста выполните команду pnpm test
.
Для выполнения конкретного набора тестов используйте команду pnpm test <suite-name>
, например:
pnpm test validator
Для фильтрации тестов внутри набора тестов используйте команду pnpm test <suite-name> -- -t <test-name>
, например:
pnpm test validator -- -t a11y-alt-text
(Вы также можете использовать FILTER=<test-name> pnpm test <suite-name>
, что удалит другие тесты вместо простого пропуска их — это приведет к более быстрому и компактному результату тестирования, но это неконвенционально. Выберите своего бойца.)
snapshot
и parser
, утверждают, что сгенерированный выход совпадает со существующими снимками.UPDATE_SNAPSHOTS=true pnpm test
.Чтобы проверить типы кодовой базы, выполните команду pnpm check
внутри packages/svelte
. Чтобы проверить типы в режиме просмотра, выполните команду pnpm check:watch
.
Eslint поймёт большинство стилевых проблем, которые могут существовать в вашем коде. Вы можете проверить стиль вашего кода, выполнив команду pnpm lint
.
snake_case
для внутренних имён переменных и методов.camelCase
для публичных имён переменных и методов.Типы автоматически создаются из источника, но результат проверяется, чтобы убедиться, что случайные изменения не были внесены. Выполните команду pnpm generate:types
, чтобы перегенерировать типы.
Пожалуйста, убедитесь, что выполнены следующие действия при отправке запроса на вытягивание:
pnpm lint
).pnpm test
).Все запросы на вытягивание должны быть открыты против ветки main
. Убедитесь, что запрос выполняет только одну вещь, в противном случае, пожалуйста, разделите его. Если эта изменение должна внести свой вклад в версионирование, выполните команду npx changeset
в корне репозитория после изменения кода и выберите соответствующие пакеты.
Когда добавляется новая разрушительная изменение, следуйте этому шаблону в вашем запросе на вытягивание:
### Новая разрушительная изменение здесь
- **Кому это влияет**:
- **Как мигрировать**:
- **Почему делать эту разрушительную изменение**:
- **Степень серьёзности (число людей, затронутых x усилия)**:
Если вы хотите вручную протестировать запрос на вытягивание в другом pnpm проекте, вы можете сделать это, выполнив команду pnpm add -D "github:sveltejs/svelte#path:packages/svelte&branch-name"
в этом проекте.
Принимая участие в проекте Svelte, вы соглашаетесь с тем, что ваши вклады будут лицензированы под его лицензией MIT.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )