Back to list
SimonOyaneder

base-rule

by SimonOyaneder

0🍴 0📅 Jan 14, 2026

SKILL.md


name: base-rule description: Convenciones y estándares para el desarrollo del motor de reglas en Python

Convenciones del Proyecto

1. Tipado Estricto

  • Todo el código debe usar type hints de Python.
  • Aplica en: parámetros de funciones, valores de retorno, atributos de clase y variables relevantes.
  • Usa tipos del módulo typing cuando sea necesario (List, Dict, Optional, Union, etc.).

2. Idioma del Código

  • Nombres (variables, funciones, clases, módulos, mensajes): en español.
  • Comentarios y docstrings: en español.
  • Errores y mensajes de error: en español.

3. Convención de Nombres

  • Usar snake_case en todo el código:
    • Nombres de archivos: mi_modulo.py
    • Funciones: calcular_resultado()
    • Variables: valor_maximo
  • Clases: usar PascalCase (ej: MotorDeReglas).

4. Documentación del Código

  • Toda función y método debe incluir un docstring que explique en español:
    • Propósito de la función.
    • Parámetros de entrada y sus tipos.
    • Valor de retorno.
    • Casos especiales o excepciones relevantes.
    • Ejemplo:
      def dividir(a, b):
        """
        Divide dos números.
      
        Parámetros:
            a (float): dividendo
            b (float): divisor
      
        Retorna:
            float: resultado de la división
      
        Lanza:
            ValueError: si b es cero
        """
        if b == 0:
            raise ValueError("No se puede dividir por cero")
        return a / b
      

5. Simplicidad sobre Complejidad

  • No sobre-abstraer: evitar patrones innecesarios.
  • Prohibido: factories complejas, exceso de interfaces, arquitectura "enterprise" sin justificación.
  • Priorizar: código legible, directo y fácil de mantener.

6. Gestión de Dependencias

  • Al instalar paquetes, buscar la última versión estable disponible.
  • Fijar versiones explícitas en pyproject.toml o requirements.txt.
  • Formato: paquete==X.Y.Z

7. Testing

  • Tests obligatorios para:
    • Cada regla implementada.
    • Combinaciones de estados y condiciones.
    • Casos límite y escenarios de error.
  • Usar pytest como framework de testing.

8. Preparación del Repositorio

  • El proyecto debe ser ejecutable siguiendo las instrucciones del README.
  • Incluir: instalación de dependencias, configuración y ejecución básica.

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon