Skip to content

📑 Tabla de Contenidos

Contribuir a Carch

¡Estamos emocionados de que estés interesado en contribuir a Carch! Las contribuciones de todo tipo son bienvenidas, ya sea que estés arreglando errores, añadiendo nuevas características o mejorando la documentación. Sigue esta guía para comenzar.

WARNING

Antes de hacer cualquier contribución, primero abre un issue en la sección Solicitud de Características. Discutiremos los cambios allí antes de proceder con la implementación.

📌 Entender la Base de Código

NOTE

Antes de contribuir, entiende la estructura de Carch:

  • Los archivos principales de Rust de Carch están ubicados en: src
sh
src/
├── ui/
   ├── app.rs
   ├── mod.rs
   ├── popups.rs
   └── render.rs 
├── main.rs 
├── commands.rs
├── display.rs
├── script_list.rs 
└── version.rs
  • Todos los scripts de módulos están organizados por categoría en:
sh
modules/
├── Browser/     # Scripts relacionados con navegadores 
├── Desktop/     # Scripts relacionados con entornos de escritorio
├── Development/ # Scripts de herramientas de desarrollo
├── System/      # Scripts de configuración del sistema
└── Terminal/    # Scripts de configuración de terminal

IMPORTANT

Primero, analiza cómo funciona el script antes de hacer cualquier cambio. Si quieres mejorar o añadir al proyecto, asegúrate de entender la estructura y cómo interactúa cada pieza. Esto te ayudará a contribuir de una manera que sea consistente con el diseño del proyecto.

sh
Para hacer commits, usa etiquetas como
feat: tu-mensaje-de-commit o fix: tu-mensaje-de-commit.

Por cierto, antes de hacer un commit, si vas a cambiar algún archivo .sh o script de Bash, asegúrate de revisar el directorio scripts/ y ejecutar ./check.sh para encontrar espacios en blanco adicionales. Si falla, ejecuta ./cleanup.sh. Eso es solo para scripts de Bash.
Para cambios en archivos de Rust, asegúrate de ejecutar cargo fmt --all --check. Si hay sugerencias, ejecuta cargo fmt --all.
Además, asegúrate de ejecutar cargo clippy y cargo clippy -- -Dwarnings para asegurarte de que no queden errores. Gracias.

Para más información sobre Commits Convencionales, consulta esta guía.

Si tienes preguntas o necesitas ayuda, no dudes en contactarnos:
📧 Email: [email protected]
💬 Discord: Únete Aquí

Pasos para Contribuir

1. 🍽️ Hacer Fork del Repositorio

  • Ve a la página de GitHub de Carch.
  • Haz clic en el botón Fork en la esquina superior derecha para crear tu propia copia del repositorio.

2. 🌿 Clonar el Repositorio Forkeado

  • Usa el siguiente comando para clonar el repositorio a tu sistema local:

    bash
    git clone https://github.com/tu-usuario/carch.git
  • Reemplaza tu-usuario con tu nombre de usuario de GitHub.

💡 CONSEJO

También puedes usar herramientas GUI como GitHub Desktop o incluso la interfaz web de GitHub para hacer fork y clonar repositorios. Estas herramientas proporcionan una interfaz visual fácil de usar para gestionar tus contribuciones.

3. 🌱 Establecer el Repositorio Original como Upstream

  • Añade el repositorio original de Carch como un remoto upstream para mantener tu fork actualizado:

    bash
    cd carch
    bash
    git remote add upstream https://github.com/original-author/carch.git

4. 🍇 Crear una Nueva Rama de Características

  • Antes de hacer cambios, crea una nueva rama con un nombre descriptivo:

    bash
    git checkout -b feature/nombre-de-tu-rama
  • Ejemplos de nombres de ramas:

    • feature/añadir-nuevo-script
    • bugfix/arreglar-problema-instalacion

5. 🔧 Hacer tus Cambios

  • Implementa los cambios necesarios en el código o documentación.
  • Asegúrate de que tus cambios sean claros, estén probados y sigan los estándares de codificación del proyecto.

6. 📝 Preparar y Hacer Commit de tus Cambios

  • Añade los archivos modificados al área de preparación:

    bash
    git add .
  • Haz commit de tus cambios con un mensaje claro:

    bash
    git commit -m "Add: [breve descripción de tus cambios]"

7. 🚀 Empujar los Cambios a tu Fork

  • Empuja tu rama a tu repositorio forkeado:

    bash
    git push origin feature/nombre-de-tu-rama

8. 📥 Enviar un Pull Request (PR)

  • Ve al repositorio original de Carch en GitHub.
  • Haz clic en New Pull Request.
  • Selecciona tu rama del menú desplegable y describe tus cambios en detalle.
  • ¡Envía el PR para revisión!

📚 Contribuir a la Documentación de Carch

La Documentación de Carch está ➥ En Vivo Aquí

🚀 Formas de Contribuir

Puedes contribuir:

  • 🪛 Arreglando errores tipográficos o errores en las guías existentes
  • 🌐 Traduciendo la documentación a otros idiomas (¡altamente alentado!)

🌍 Traducir Documentación

¿Quieres ayudar a hacer Carch accesible para usuarios de todo el mundo? ¡Ayúdanos a traducir la documentación!

Si estás contribuyendo con un nuevo idioma, sigue estos pasos:

  1. 📁 Crea una nueva carpeta para tu idioma dentro del directorio docs/. Usa códigos ISO 639-1 (ej. fr, es, hi, etc.).
  2. 🛠️ Traduce el contenido Markdown dentro de la nueva carpeta.
  3. 🧩 Modifica docs/.vitepress/config.ts:
    • Añade tu idioma en la sección locales.
    • Proporciona un label, lang, y link para la navegación.

🧪 Probar tus Cambios Localmente

Para previsualizar tus cambios:

sh
bun install
bun run docs:dev

IMPORTANT

¡Por favor abre un issue primero si planeas introducir cambios estructurales u organizacionales importantes. Nos encantaría discutir y colaborar en ello de antemano!

🧾 Estilo de Commit

Usa mensajes de commit claros como:

sh
git commit -m "fix(docs): corregir error tipográfico en la guía de instalación"
git commit -m "feat(docs): añadir traducción al hindi"

Más sobre Commits Convencionales.

🙌 ¡Gracias por ayudar a mejorar la documentación!

Directrices

Calidad del Código

  • Sigue el estilo de codificación existente del proyecto.
  • Escribe código claro, conciso y bien documentado.

Pruebas

  • Prueba tus cambios localmente para asegurarte de que funcionen como se espera.
  • Si tus cambios introducen nuevas características, añade las pruebas necesarias donde sea aplicable.

Documentación

  • Si tus cambios involucran nueva funcionalidad, actualiza la documentación relevante.
  • Asegúrate de que el README o Wiki refleje tus actualizaciones.

Sincronizar tu Fork

  • Mantén tu fork actualizado para evitar conflictos:

    bash
    git fetch upstream
    bash
    git merge upstream/main
    • Reemplaza main con la rama predeterminada del repositorio si es diferente.

¡Gracias por contribuir a Carch! Tu esfuerzo ayuda a hacer este proyecto mejor para todos.

Publicado bajo la Licencia MIT.