Grupo Mecsa

Átomos

Las piezas indivisibles: botones, campos, etiquetas, avatares y estados de carga. Cada ejemplo se renderiza con el CSS real del producto, así que lo que ves acá es literalmente lo que vas a ver en la app o en el sitio.

Mostrar

Botones

Acción principal, secundaria y destructiva. Un botón primario por pantalla.

Apps internas
styles/app-shell.css
Los botones llevan .gm-ripple automático desde js/animations.js. No pongas dos primarios compitiendo en la misma vista.

Etiquetas de estado

El estado de un registro en una tabla o tarjeta. Los fondos suaves ya traen su color de texto.

Apps internas
styles/app-shell.css
Dentro de una tabla usá .badge-gm (está afinado para .table-gm-container); suelto, .status-pill.

Chips

Atributos de un registro en su ficha: estado, tipo, avisos.

Apps internas
GrupoMecsaProyectos/pages/proyecto.php

Campos de formulario

Entradas, selects y áreas de texto. Bootstrap tal cual, ya tematizado por los tokens.

Apps internas
styles/app-shell.css
No pongas bg-white en un campo: el fondo sale de --input-bg y en oscuro quedaría blanco.

Casillas, radios e interruptores

Interruptor para algo que se aplica al instante; casilla para algo que se guarda con el formulario.

Apps internas
styles/app-shell.css

Avatares e iconos

Inicial sobre navy cuando no hay foto. El icono en pastilla acompaña a los indicadores.

Apps internas
styles/app-shell.css

Estados de carga

Spinner para una acción puntual; esqueleto cuando se está cargando contenido con forma conocida.

Apps internas
styles/app-shell.css
El esqueleto tiene que tener la forma de lo que va a llegar. Si no la sabés, usá el spinner.

Contador animado

Cifra que sube al entrar en pantalla. Lo maneja js/animations.js con el atributo data-counter.

Apps internas
starter/js/animations.js

Tipografía

Inter en 5 pesos. Las clases gm existen igual en la web y en las apps.

Apps internas
styles/tokens.css

Botones del sitio

Los del sitio público: más grandes y con más aire que los de las apps.

Web pública
GrupoMecsa/styles/components/_buttons_forms.scss

Etiquetas del sitio

Categorías de blog, estados de pedido y distintivos de producto.

Web pública
GrupoMecsa/styles/components/_buttons_forms.scss

Estrellas de valoración

La calificación de un producto: promedio, estrellas y cantidad de reseñas.

Web pública
GrupoMecsa/scripts/product.js
Son iconos, no una imagen: fa-solid las llenas y fa-regular las vacías, redondeando el promedio. El tamaño depende del contexto: .rating-number dentro de .product-card es chico, y suelto (ficha de producto) mide 3,5 rem.

Esqueleto de carga

Lo que se ve mientras carga el catálogo. Tiene la forma de la tarjeta que va a llegar.

Web pública
GrupoMecsa/scripts/maintienda.js

Utilidades de movimiento

Clases sueltas para dar vida sin escribir CSS. Se combinan con cualquier bloque.

Apps internas
styles/app-shell.css
También hay .gm-fade-in / -down / -left / -right, .gm-scale-in, .gm-pop y .gm-stagger (para que una lista entre escalonada). El ripple de los botones y los contadores los aplica solo js/animations.js.

Estado vacío

Lo que se ve cuando no hay datos. Icono tenue, una frase, sin dramatismo.

Apps internas
GrupoMecsaProyectos/pages/dashboard.php
Decí qué falta, no «sin datos». Si la pantalla permite crear algo, poné el botón acá mismo.

Etiquetas del blog

Temas de un artículo. Enlazan al listado filtrado por esa etiqueta.

Web pública
GrupoMecsa/pages/post.php