Style de code
Toutes les règles de style sont appliquées par les hooks pre-commit — aucune exécution manuelle de formateur n’est nécessaire. Les règles ci-dessous décrivent ce que les hooks font respecter.
Python
- Linter et formateur :
ruff— configuré dans.pre-commit-config.yaml. Il remplace à la foisflake8etblack. - Annotations de type : encouragées sur toutes les fonctions publiques et méthodes de classe. Pas encore imposées en CI, mais les PR sans annotations de type sur du nouveau code recevront des remarques en revue.
- Longueur de ligne : 100 caractères (surcharge de la valeur par défaut de ruff).
TypeScript
- Formateur :
prettiervia pre-commit — aucune configuration par projet n’est nécessaire. - Mode :
strictdanstsconfig.jsonpour toutes les applications TS. - Évitez
any; utilisezunknownet affinez les types explicitement.
SQL (dbt)
- Utilisez des CTE pour découper la logique — évitez les sous-requêtes imbriquées.
- Tous les mots-clés SQL en minuscules (
select,from,where,join). - snake_case pour tous les identifiants (colonnes, alias, noms de modèles).
- Une CTE par étape logique de transformation ; nommez les CTE de façon descriptive.
with source as (
select * from {{ source('hmis', 'facility_reports') }}
),
renamed as (
select
facility_id,
report_month,
outpatient_visits
from source
)
select * from renamedDernière mise à jour le