Bedrud Документация

Вклад в Bedrud приветствуется. В этом руководстве описан процесс отправки изменений.

Примечание: Каноническое руководство по участию находится в корне репозитория: CONTRIBUTING.md. Эта страница оставлена только для справки.

Начало работы

  1. Сделайте форк репозитория
  2. Клонируйте свой форк
  3. Создайте ветку для функции от main
  4. Внесите свои изменения
  5. Отправьте pull request

Предварительные требования

  • Go 1.22+
  • Bun (для веб-фронтенда)
  • Rust (для десктопного приложения)
  • Make
  • Git

Настройка окружения разработки

# After forking on GitHub, clone your fork
git clone https://github.com/<your-username>/bedrud.git
cd bedrud
make init
make dev

См. Рабочий процесс разработки для подробных инструкций по настройке.

Структура проекта

ДиректорияЯзыкОписание
server/GoБэкенд API и встроенный LiveKit
apps/web/TypeScript/ReactВеб-фронтенд
apps/desktop/Rust + SlintДесктопное приложение
apps/android/KotlinПриложение для Android
apps/ios/SwiftПриложение для iOS
agents/PythonБот-агенты
packages/TypeScriptОбщие определения типов
tools/cli/PythonCLI для развёртывания
docs/MarkdownДокументация

Стиль кода

ЯзыкСтандарт
Gogofmt
TypeScript/ReactBiome
KotlinСтандартное форматирование Android Studio
SwiftСтандартное форматирование Xcode
Pythonruff

Процесс Pull Request

  1. Именование веток: feature/description, fix/description или docs/description
  2. Сообщения коммитов: <действие> <что> для <почему> (например, add user model for auth feature, fix login redirect for expired sessions)
  3. CI-проверки: Все проверки GitHub Actions должны пройти
  4. Описание: Укажите, что изменилось и почему

CI-проверки

Каждый PR автоматически проходит следующие проверки:

ПроверкаЧто проверяет
Servergo vet, сборка, тесты
WebПроверка типов TypeScript, сборка
AndroidLint, модульные тесты
iOSСборка, тесты (симулятор)

Сообщение о проблемах

Создавайте issues на GitHub Issues с указанием:

  • Шагов для воспроизведения
  • Ожидаемого и фактического поведения
  • Деталей окружения (ОС, браузер, версия приложения)

Документация

Документация находится в docs/ и собирается с помощью MkDocs Material.

Локальный предпросмотр

pip install mkdocs-material
mkdocs serve

Затем откройте http://localhost:8000 в браузере.

Структура

Страницы документации организованы по темам. Навигация определяется в mkdocs.yml в корне проекта.

Лицензия

Внося вклад, вы соглашаетесь с тем, что ваши изменения будут лицензированы под Apache License 2.0.