Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Story Share portal: Safety Exit quick-escape button

Aperta
#2,149 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
javascript

Direzione di ricerca

Esamina innanzitutto il app/frontend/javascript/controllers/safety_exit_controller.js rimosso e le modifiche di parità del portale in PR #2148. Traccia il modo in cui il portale /story_shares viene renderizzato tra le pagine e su dispositivi mobili, quindi definisci e verifica un controllo accessibile e sempre visibile e una scorciatoia da tastiera il cui comportamento di navigazione e cronologia corrisponda ai requisiti di sicurezza concordati; documenta la limitazione della cronologia lato client.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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).

Lingua principale
Ruby
Stelle
15
Fork
28
Merge medio
1g 12m
PR unite (30g)
262

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rubyforgood/awbw

Tutte le issue di rubyforgood/awbw

Issue simili

Altre issue su Ruby

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.