Bedrud Documentación

Las contribuciones a Bedrud son bienvenidas. Esta guía describe el proceso para enviar cambios.

Nota: La guía de contribución oficial se encuentra en la raíz del repositorio: CONTRIBUTING.md. Esta página se conserva únicamente como referencia.

Primeros pasos

  1. Haz un fork del repositorio
  2. Clona tu fork
  3. Crea una rama de feature desde main
  4. Realiza tus cambios
  5. Envía un pull request

Requisitos previos

  • Go 1.22+
  • Bun (para el frontend web)
  • Rust (para la app de escritorio)
  • Make
  • Git

Configuración del entorno de desarrollo

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

Consulta el Flujo de trabajo de desarrollo para obtener instrucciones detalladas de configuración.

Estructura del proyecto

DirectorioLenguajeDescripción
server/GoAPI del backend y LiveKit integrado
apps/web/TypeScript/ReactFrontend web
apps/desktop/Rust + SlintApp de escritorio
apps/android/KotlinApp de Android
apps/ios/SwiftApp de iOS
agents/PythonAgentes bot
packages/TypeScriptDefiniciones de tipos compartidos
tools/cli/PythonCLI de despliegue
docs/MarkdownDocumentación

Estilo de código

LenguajeEstándar
Gogofmt
TypeScript/ReactBiome
KotlinValores por defecto de Android Studio
SwiftValores por defecto de Xcode
Pythonruff

Proceso de pull request

  1. Nomenclatura de ramas: feature/descripción, fix/descripción o docs/descripción
  2. Mensajes de commit: <acción> <qué> por <por qué> (p.ej., add user model for auth feature, fix login redirect for expired sessions)
  3. Verificaciones de CI: Todas las verificaciones de GitHub Actions deben pasar
  4. Descripción: Incluye qué cambió y por qué

Verificaciones de CI

Cada PR ejecuta estas verificaciones automáticamente:

VerificaciónQué valida
Servergo vet, compilación, tests
WebVerificación de tipos TypeScript, build
AndroidLint, tests unitarios
iOSCompilación, test (simulador)

Reportar problemas

Abre issues en GitHub Issues incluyendo:

  • Pasos para reproducir
  • Comportamiento esperado vs. comportamiento real
  • Detalles del entorno (SO, navegador, versión de la app)

Documentación

La documentación se encuentra en docs/ y se genera con MkDocs Material.

Vista previa local

pip install mkdocs-material
mkdocs serve

Luego abre http://localhost:8000 en tu navegador.

Estructura

Las páginas de documentación se organizan por tema. La navegación se define en mkdocs.yml en la raíz del proyecto.

Licencia

Al contribuir, aceptas que tus contribuciones se licenciarán bajo la Licencia Apache 2.0.