Target for article and homepage templates.
Technology architecture
Safety-first platform specification
The mandate requires Unmuted to become more than a news site: it must be a privacy-aware, accessible, offline-capable and community-centred platform.
India-first mobile UX, no horizontal scroll.
Minimum for navigation and buttons.
Contrast, keyboard, alt text and semantic HTML.
Mandatory safety features
Implemented + specified
Panic button
A one-click panic button is now included in the header. It hides the website content with a neutral safety screen using client-side JavaScript only.
- No server call
- Works without login
- Can be triggered from any page
Dark mode default
New strategic pages load dark by default and the theme toggle persists user preference in localStorage.
- Safer for low-visibility reading
- Contrast overrides included
- Light mode remains available
Anonymous reading
The static build supports reading without accounts. Future account systems must be optional and privacy-first.
- No login wall for safety content
- Anonymous profile option specified
- Minimal metadata principle
Offline capability
A service worker has been added for the app shell, key pages, CSS and JavaScript.
- Offline fallback page
- Critical route caching
- No API key exposure
VPN/proxy support
No geoblocking logic is introduced in the static build. CDN/security rules should allow legitimate privacy tools.
- No region lock
- No forced location
- Audit with VPN before launch
Accessibility controls
The platform now includes JS hooks for font size and high-contrast toggles, with CSS support.
- Focus-visible styles
- Reduced motion support
- Keyboard-first controls
Feature roadmap
Community, monetisation and product modules
| Feature group | Mandate requirement | Implementation direction |
|---|---|---|
| Profiles | Optional profiles with pronouns, privacy settings and no mandatory doxxing | Phase 2 backend + account system |
| Follow system | Follow journalists, topics, regions and story types | Phase 2 notification preference model |
| Forums | Moderated safe spaces, reporting, blocking and anonymous comments | Phase 2 community layer |
| Events | RSVP, ticketing and calendar integration | Events page exists; add backend integration next |
| Subscriptions | Free, Supporter, Member, Patron tiers | Revenue page + membership model created |
| Analytics | GA4, events, conversions and dashboards | Add privacy-aware analytics post-consent |
| Security | HTTPS, CSP, validation, rate limits, 2FA | Deployment/server checklist documented |