Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Story Share portal: Safety Exit quick-escape button

Abierto
#2,149 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
45/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
javascript

Línea de trabajo

Revisa primero el app/frontend/javascript/controllers/safety_exit_controller.js eliminado y los cambios de paridad del portal en PR #2148. Rastrea cómo se renderiza el portal /story_shares entre las páginas y en dispositivos móviles; después, define y verifica un control accesible y siempre visible, así como un atajo de teclado, cuyo comportamiento de navegación e historial coincida con los requisitos de seguridad acordados; documenta la limitación del historial del lado del cliente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement stories

Context

The Story Share portal (/story_shares) serves an audience that includes domestic-violence survivors. The live WordPress site (stories.awbw.org) has a prominent "Safety Exit" button that lets a visitor leave the site instantly.

An initial JS implementation (a safety_exit Stimulus controller doing window.open + location.replace) was built and then removed from the portal-parity PR (#2148) to keep it lean — and because a plain no-JS link gives false security (it navigates away but doesn't scrub browser history, so the back button still returns to the story).

What's needed

  • A Safety Exit control that meaningfully protects the visitor:
    • Navigates away to a neutral site (e.g. weather.com) immediately.
    • Scrubs/replaces history so the back button doesn't return to the portal (location.replace, and ideally overwrite prior entries).
    • Optionally opens a decoy tab and/or clears the current tab's content first.
    • Keyboard shortcut (the WP site / common patterns use a quick key) and a fixed, always-visible button on every portal page, including mobile.
  • Accessibility: clearly labeled, high-contrast, reachable without scrolling.
  • Document the inherent limitation (client-side JS cannot fully erase browser history) and decide whether that's acceptable or whether to add guidance.

Notes

Prior implementation for reference is in the git history of PR #2148 (app/frontend/javascript/controllers/safety_exit_controller.js, since removed).

Lenguaje dominante
Ruby
Estrellas
15
Forks
28
Merge medio
1 d 12 min
PR fusionados (30 d)
262

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rubyforgood/awbw

Todos los issues de rubyforgood/awbw

Issues similares

Más issues de Ruby

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.