Security fixes: - JWT_SECRET/ADMIN_PASSWORD fail-fast on missing/weak values - Switch admin auth from localStorage to httpOnly cookie - Rate limiting on login (10/15min) and contact form (3/10min) - CORS whitelist via ALLOWED_ORIGINS env var - Helmet with CSP, frameguard - Escape HTML in contact email and admin panel innerHTML - Remove SVG from upload whitelist - err.message no longer leaked in API responses - MAIL_TO moved to env var - JWT expiry 7d → 24h Navbar: - Rename: رادار آینده → آیندهپژوهی و رصد هوشمند - Rename: مرز فناوری → فناوری و نوآوری - Rename: نبض صنعت → بازار و زنجیره فولاد - Add: پایداری و فولاد سبز (/sustainability) - Add: ژئوپلیتیک و اقتصاد جهانی (/geopolitics) - Remove: رویدادها Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| app | ||
| assets | ||
| components/ui | ||
| context | ||
| data | ||
| lib | ||
| pages | ||
| App.tsx | ||
| index.css | ||
| main.tsx | ||