Участие
Помогите улучшить проект или создайте колоды на вашем языке
❀ ❀ ❀
🤝 Как участвовать
Есть несколько способов помочь развитию проекта:
- Сообщать об ошибках: Нашли проблему? Дайте нам знать!
- Предлагать функции: Есть идея? Мы будем рады услышать
- Отправлять код: Улучшайте скрипты генератора
- Документация: Помогайте улучшать руководства
- Переводы: Создавайте колоды на других языках
🐛 Сообщение об ошибках
Если вы нашли ошибку или хотите предложить улучшение:
- Проверьте, не создана ли уже задача на странице Issues
- Если нет, создайте новую задачу с:
- Четким описанием проблемы
- Шагами для воспроизведения (если применимо)
- Ожидаемое и фактическое поведение
- Сообщения об ошибках (если есть)
💻 Разработка
Хотите улучшить генератор? Вот как:
Требования
- Python 3.7 или выше
- Базовое понимание форматов карточек Anki
- Знание структуры JLPT (полезно, но не обязательно)
Настройка
# Клонируйте репозиторий
git clone https://github.com/vitalii-bekshnev/jlpt-anki-decks.git
cd jlpt_anki
# Установите зависимости (если есть)
pip install -r requirements.txt # если доступно
Внесение изменений
- Сделайте форк репозитория
- Создайте ветку:
git checkout -b feature/ваша-фича - Внесите изменения
- Протестируйте, сгенерировав колоды локально
- Отправьте pull request
Структура проекта
jlpt_anki/
├── scripts/
│ ├── create_kanji_decks.py # Генератор колод кандзи
│ ├── create_vocab_decks.py # Генератор словарных колод
│ ├── create_tiered_decks.py # Уровневые колоды
│ └── jmdict_utils.py # Общие утилиты
├── .github/workflows/
│ └── build-and-release.yml # Автоматизация релизов
└── decks/ # Сгенерированные колоды
🌍 Генерация колод на других языках
Генератор поддерживает множество языков! Вот как создать колоды на вашем языке:
Шаг 1: Скачайте словарные файлы
Получите JSON-файлы для вашего языка из релизов jmdict-simplified:
kanjidic2-[lang]-[version].json(кандзи)jmdict-[lang]-[version].json(словарь)jmdict-examples-[lang]-[version].json(примеры — опционально)
Шаг 2: Генерация колод кандзи
python scripts/create_kanji_decks.py \
-i путь/к/kanjidic2-[lang].json \
-o директория_вывода/
Шаг 3: Генерация словарных колод
python scripts/create_vocab_decks.py \
--jmdict путь/к/jmdict-[lang].json \
--jmdict-examples путь/к/jmdict-examples-[lang].json \
--kanjidic путь/к/kanjidic2-[lang].json \
-o директория_вывода/ \
--examples
Шаг 4: Генерация уровневых колод
python scripts/create_tiered_decks.py \
--jmdict путь/к/jmdict-[lang].json \
--jmdict-examples путь/к/jmdict-examples-[lang].json \
--kanjidic путь/к/kanjidic2-[lang].json \
-o уровневые_колоды/
Доступные языки
Коды языков (проверьте jmdict-simplified):
- Английский (
jmdict-eng) - Русский (
jmdict-rus) - Немецкий (
jmdict-deu) - Французский (
jmdict-fra) - Испанский (
jmdict-spa) - Португальский (
jmdict-por) - Итальянский (
jmdict-ita) - Голландский (
jmdict-dut) - И другие!
📋 Руководство по коду
- Следуйте руководству PEP 8 для Python
- Пишите понятные сообщения коммитов
- Добавляйте комментарии к сложной логике
- Тестируйте изменения перед отправкой
- Обновляйте документацию при необходимости
🙏 Спасибо!
Каждый вклад помогает сделать этот проект лучше для всех, кто учит японский по всему миру. Будь то сообщение об ошибке, предложение функции или код — ваша помощь очень ценится!
❀ ❀ ❀