{"id":449,"date":"2026-03-08T07:46:14","date_gmt":"2026-03-08T06:46:14","guid":{"rendered":"https:\/\/blog.oriolgomez.com\/?p=449"},"modified":"2026-03-08T07:51:50","modified_gmt":"2026-03-08T06:51:50","slug":"arm-o-accessibility-report-manager-o-como-agilizar-los-reportes-manuales","status":"publish","type":"post","link":"https:\/\/blog.oriolgomez.com\/?p=449","title":{"rendered":"ARM o Accessibility Report manager o c\u00f3mo agilizar los reportes manuales"},"content":{"rendered":"\n<div class=\"wp-block-jetpack-markdown\"><p>\u00a1Buenas! Hoy os quiero presentar una herramienta que he desarrollado para mi d\u00eda a d\u00eda como responsable de accesibilidad: Accessibility Report Manager.<\/p>\n<p>Es una aplicaci\u00f3n web que permite gestionar informes de accesibilidad de forma c\u00f3moda y organizada. Cuando auditas un sitio web y vas encontrando mierdas, siempre us\u00e1bamos un excel o alg\u00fan tipo de informe predefinido y para asociarlos a criterios WCAG, adjuntar capturas de pantalla etc era un rollo porque hab\u00eda que mover el cursor entre 80 filas, no permit\u00eda filtrar, etc.\nLuego encima para exportar todo eso en un formato \u00fatil era un poco rollo. Pues eso es exactamente lo que hace esta herramienta.<\/p>\n<h2>\u00bfQu\u00e9 puedes hacer con ella?<\/h2>\n<p>La idea es sencilla: creas un informe, vas a\u00f1adiendo issues y cada issue queda vinculado a un criterio WCAG 2.2, una p\u00e1gina concreta del sitio y una prioridad. Para cada problema puedes escribir una descripci\u00f3n, indicar d\u00f3nde se encuentra, adjuntar una captura de pantalla y a\u00f1adir notas con la soluci\u00f3n recomendada.<\/p>\n<p>Despu\u00e9s puedes filtrar los issues por p\u00e1gina, por criterio WCAG, por prioridad o por si necesitan revisi\u00f3n. Esto es muy \u00fatil cuando tienes informes grandes con varios issues y necesitas centrarte en una parte concreta.<\/p>\n<h2>Exportaci\u00f3n e integraci\u00f3n con Jira<\/h2>\n<p>Una de las cosas que m\u00e1s me interesaba era poder sacar los datos del informe de forma pr\u00e1ctica. La herramienta permite:<\/p>\n<ul>\n<li>Descargar el informe como JSON para poder cargarlo m\u00e1s adelante y seguir trabajando.<\/li>\n<li>Exportar un informe HTML independiente con todos los issues y las capturas incrustadas, listo para enviar al cliente (o equipo).<\/li>\n<li>Copiar cualquier issue al portapapeles en un formato legible, ideal para pegarlo en un Slack o algo.<\/li>\n<li>Crear tickets de Jira directamente desde la aplicaci\u00f3n. Configuras tu instancia de Jira, tu API token, y con un clic puedes crear un ticket con toda la informaci\u00f3n del issue ya rellenada.<\/li>\n<\/ul>\n<p>La integraci\u00f3n con Jira funciona a trav\u00e9s de un peque\u00f1o proxy local que viene incluido en el proyecto, necesario para evitar problemas de CORS. Se instala f\u00e1cilmente y no almacena ning\u00fan dato.<\/p>\n<h2>Accesibilidad<\/h2>\n<p>Como no pod\u00eda ser de otra forma, la herramienta en s\u00ed est\u00e1 construida pensando en la accesibilidad. Funciona con lector de pantalla, tiene navegaci\u00f3n por teclado completa, indicadores de foco visibles y buen contraste. Est\u00e1 biling\u00fce en ingl\u00e9s y espa\u00f1ol por ahora.<\/p>\n<h2>Framework<\/h2>\n<p>Est\u00e1 hecha con Svelte 5, TypeScript y Vite. Y un poquito de vibecoding, \u00a1claro!\nLos datos se guardan localmente, no hay servidor ni base de datos externa, as\u00ed que toda la informaci\u00f3n se queda en tu pc.<\/p>\n<p>Os dejo el <a href=\"https:\/\/github.com\/ogomez92\/arm\">enlace al repo<\/a><\/p>\n<p>\u00a1Espero que os sirva!<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[],"class_list":["post-449","post","type-post","status-publish","format-standard","hentry","category-sin-categoria"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5ioTt-7f","_links":{"self":[{"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/posts\/449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=449"}],"version-history":[{"count":2,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/posts\/449\/revisions"}],"predecessor-version":[{"id":451,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=\/wp\/v2\/posts\/449\/revisions\/451"}],"wp:attachment":[{"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.oriolgomez.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}