一键导入
i18n
Criterios para gestionar textos visibles, claves de traduccion y pruebas de internacionalizacion en Kernelia (Next.js + next-intl, ES/EN).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Criterios para gestionar textos visibles, claves de traduccion y pruebas de internacionalizacion en Kernelia (Next.js + next-intl, ES/EN).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Detecta lagunas recurrentes de conocimiento, reglas o terminologia y define la evidencia minima para proponer mejoras gobernadas sin mezclar esos cambios con el trabajo de negocio.
Política para proponer, evaluar y aprobar cambios de dependencias sin introducir librerías innecesarias ni versiones arbitrarias.
Define un contrato de errores estable entre capas y sistemas usando codigos y metadatos estructurados.
Criterios para estructurar un frontend por features, con boundaries claros entre UI, hooks, servicios y estado.
Reglas de ramas, commits y PR para trabajar con una rama canónica de feature y GitHub.
Criterios para dividir el trabajo técnico en tareas implementadoras mínimas.
| name | i18n |
| description | Criterios para gestionar textos visibles, claves de traduccion y pruebas de internacionalizacion en Kernelia (Next.js + next-intl, ES/EN). |
next-intl sobre Next.js 15 App Router.es (default), en./es/..., /en/...) con localePrefix: "as-needed".messages/{locale}.json en la raiz del proyecto.next-intl lee Accept-Language y cookie NEXT_LOCALE.Garantizar que cada texto visible esta traducido en ES y EN antes de mergear, con claves estables y mantenibles.
aria-*, placeholder, title, mensajes de error de UI).messages/es.json y messages/en.json en el mismo commit.lang correspondiente.news.list.empty, news.filters.category.label, news.card.readMore.common.* solo cuando son genuinamente transversales (common.actions.search, common.actions.clear)."news.list.count": "{count, plural, one {# noticia} other {# noticias}}".useFormatter().dateTime() de next-intl, no con literales.import { getTranslations } from "next-intl/server".import { useTranslations } from "next-intl".const t = useTranslations("news.list").metadata (SEO, <title>, OG), usar getTranslations dentro de generateMetadata.next-intl's Link o useRouter().replace preservando la ruta actual.NEXT_LOCALE (1 ano).NextIntlClientProvider y los mensajes del locale correspondiente./es y /en y validar elementos clave.eslint-plugin-i18next adaptado) que falle si hay literales en JSX bajo app/ excluyendo app/api/.es.json y en.json.pnpm i18n:check).common.label o common.text.