Saltar a contenido

Convenciones de nombres — GekkoCheckin

Frontend (Angular/Ionic)

  • Componentes: kebab-case en selector, PascalCase en clase. Ej: pin-modal.component.tsPinModalComponent, selector app-pin-modal.
  • Servicios: kebab-case en archivo, PascalCase + sufijo Service. Ej: auth.service.tsAuthService.
  • Páginas: sufijo Page. Ej: dashboard.page.ts, time-control.page.ts.
  • Rutas: kebab-case en path. Ej: time-control, review-pending.
  • Clases CSS/SCSS: kebab-case, prefijo semántico por vista. Ej: .checkin-dashboard, .employee-list-modal, .config-btn-primary.

Backend (Rust)

  • Módulos y archivos: snake_case. Ej: time_control_handler.rs, shift_assignment_repo.rs.
  • Handlers: sufijo _handler. Ej: auth_handler, places_handler.
  • Repos: sufijo _repo. Ej: staff_repo, time_control_repo.
  • Tipos y structs: PascalCase. Ej: ClockInRequest, AppError.
  • Funciones: snake_case. Ej: clock_in, resolve_actor_session.

Data-testid (frontend)

Formato: gk-<componente>-<elemento>-<variante>.

  • Ejemplos: gk-pin-modal-input, gk-dashboard-place-card, gk-time-control-clock-in-btn.