We release patches for security vulnerabilities for the following versions:
| Version | Supported |
|---|---|
| 1.0.x | β |
We take security seriously. If you discover a security vulnerability, please follow these steps:
Do NOT create a public GitHub issue for security vulnerabilities.
Instead, please report security issues by emailing: Use this repository's GitHub Security Advisories / private vulnerability reporting feature.
Your report should include:
- Description β Clear explanation of the vulnerability
- Steps to Reproduce β Detailed steps to reproduce the issue
- Impact Assessment β Potential impact and severity
- Suggested Fix β If you have recommendations (optional)
- Your Contact Info β So we can follow up
- Initial Response: Within 48 hours
- Status Update: Within 7 days
- Fix Timeline: Varies by severity
- Critical: 1-7 days
- High: 7-30 days
- Medium: 30-90 days
- Low: Best effort
We appreciate responsible disclosure. With your permission, we'll:
- Credit you in our CHANGELOG
- List you in our security acknowledgments
- Always use HTTPS when deploying
- Keep dependencies updated (
npm auditregularly) - Don't commit
.envfiles with sensitive data - Use Content Security Policy headers
- Validate user inputs if you fork and add backend features
This project uses localStorage for:
- User preferences (theme, language)
- Favorites list
- Vote history
Note: No sensitive data is stored. All data stays client-side.
We use CDN scripts for:
- Alpine.js (reactivity)
- i18next (internationalization)
- Supabase (optional backend)
All scripts use SRI (Subresource Integrity) hashes where available.
- β No server-side code execution
- β No database credentials in client code
- β No authentication tokens stored insecurely
- β CORS properly configured
- β XSS protection via CSP headers (recommended)
Thank you for helping keep UI and AI secure! π