Ai 3f54dbf375 feat: avatar upload for profile/chats, fix session persistence on refresh
- Profile modal: upload/remove user avatar, edit name/bio/phone, change password
- Chat info panel: upload/remove chat photo (owner/admin only)
- Avatar component: render photo when available, fallback to initials
- Session fix: initialize Zustand store from localStorage to prevent redirect on refresh
- Backend: avatar upload endpoints for users and chats, migration adds avatar columns

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22 11:55:11 +03:00
Description
JaniChat — corporate messenger
357 KiB
Languages
TypeScript 97.1%
JavaScript 1.3%
CSS 0.7%
HTML 0.4%
Dockerfile 0.4%
Other 0.1%