Volver al Changelog
v1.2.0 · Menor
Actualización de abril
Blog multilingüe, publicación programada con feeds RSS, fix de OAuth y refinamiento de UI.
Abril fue el mes en que el blog se hizo mayor. Soporte multilingüe, publicación programada, feeds RSS y un puñado de fixes que liman aristas en la experiencia de desarrollo.
Blog
- Posts multilingües —
Postahora tiene los camposlocaleytranslationGroupId. Cada post vive en un único idioma con su propio slug por locale, y las traducciones se enlazan explícitamente vía el ID de grupo. El sitemap emite alternateshreflangconx-defaultsolo para URLs que realmente existen — se acabaron las rutas fantasma. - Publicación programada + feeds RSS — configura un
publishedAtfuturo para programar el post.feed.xmlpor locale expone el feed para lectores y agregadores. - Fix del selector de idioma — cambiar de idioma desde un post bilingüe ahora resuelve el slug hermano en vez de replicar el actual y devolver 404.
Auth
- Fix de login OAuth (Google / GitHub / LinkedIn) — añadidos los dos campos que faltaban en
Account(accessTokenExpiresAt,scope) que Better Auth necesita para los callbacks OAuth, y arreglado el bug de hidratación donde los botones sociales desaparecían tras montar porquegetOAuthProviders()se llamaba desde cliente.SocialLoginButtonsahora recibeproviderscomo prop desde la página servidor.
UI
- Diálogos nativos del navegador reemplazados por shadcn
<AlertDialog>/<Dialog>— cadaconfirm()ywindow.prompt()es ahora un componente con tema (<ConfirmDialog>y<PromptDialog>) que respeta dark mode, i18n y accesibilidad. Una regla en CLAUDE.md impide que la IA reintroduzca los diálogos nativos. - Rebote de overscroll desactivado — añadido
overscroll-behavior: noneenhtmlpara eliminar el rebote elástico al hacer scroll hasta los extremos de la página.