Les contributions à Bedrud sont les bienvenues. Ce guide couvre le processus de soumission des modifications.
Note : Le guide de contribution canonique se trouve à la racine du dépôt : CONTRIBUTING.md. Cette page est archivée pour référence uniquement.
Pour Commencer
- Fork le dépôt
- Clonez votre fork
- Créez une branche de fonctionnalité à partir de
main - Effectuez vos modifications
- Soumettez une pull request
Prérequis
- Go 1.22+
- Bun (pour le frontend web)
- Rust (pour l’application de bureau)
- Make
- Git
Configuration du Développement
# Après avoir forké sur GitHub, clonez votre fork
git clone https://github.com/<votre-nom-d-utilisateur>/bedrud.git
cd bedrud
make init
make devConsultez le Workflow de développement pour des instructions de configuration détaillées.
Structure du Projet
| Répertoire | Langage | Description |
|---|---|---|
server/ | Go | API backend et LiveKit intégré |
apps/web/ | TypeScript/React | Frontend web |
apps/desktop/ | Rust + Slint | Application de bureau |
apps/android/ | Kotlin | Application Android |
apps/ios/ | Swift | Application iOS |
agents/ | Python | Agents de bot |
packages/ | TypeScript | Définitions de types partagés |
tools/cli/ | Python | CLI de déploiement |
docs/ | Markdown | Documentation |
Style de Code
| Langage | Standard |
|---|---|
| Go | gofmt |
| TypeScript/React | Biome |
| Kotlin | Android Studio defaults |
| Swift | Xcode defaults |
| Python | ruff |
Processus de Pull Request
- Nom de branche :
feature/description,fix/descriptionoudocs/description - Messages de commit :
<action> <quoi> pour <pourquoi>(par exemple,add user model for auth feature,fix login redirect for expired sessions) - Vérifications CI : Toutes les vérifications GitHub Actions doivent réussir
- Description : Incluez ce qui a changé et pourquoi
Vérifications CI
Chaque PR exécute automatiquement ces vérifications :
| Vérification | Ce qu’elle valide |
|---|---|
| Server | go vet, build, tests |
| Web | TypeScript type check, build |
| Android | Lint, unit tests |
| iOS | Build, test (simulator) |
Signaler des Problèmes
Signalez les problèmes sur GitHub Issues avec :
- Les étapes pour reproduire
- Le comportement attendu vs réel
- Les détails de l’environnement (OS, navigateur, version de l’application)
Documentation
La documentation se trouve dans docs/ et est construite avec MkDocs Material.
Aperçu Local
pip install mkdocs-material
mkdocs serveEnsuite, ouvrez http://localhost:8000 dans votre navigateur.
Structure
Les pages de documentation sont organisées par sujet. La navigation est définie dans mkdocs.yml à la racine du projet.
Licence
En contribuant, vous acceptez que vos contributions seront licenciées sous la Licence Apache 2.0.