0.8 beta is out!
# Changelog
All notable changes to Reponje, from v0.2 to v0.8.
## [v0.8] — 2026-07-29
### ADDED
**Mobile Experience**
- Pull-to-refresh on feed and list pages (feed, conversations, notifications, explore)
- Full-screen Instagram-style Stories Viewer with progress bars, auto-advance, and tap navigation
- Infinite scroll on feed and explore pages (IntersectionObserver-based, preserves pagination fallback)
- Haptic feedback on key actions (like, comment, story swipe, FAB tap) via `navigator.vibrate()`
- Bottom sheet for FAB and action menus (slide-up with backdrop, dismiss on tap/swipe-down)
- Skeleton loading states during AJAX loading (feed, explore, profile)
**Social Features**
- Share as repost (Share to own feed) with attribution display
- Hashtag support (`#hashtag` parsing, clickable links, hashtag search view)
- Post bookmarking (Save) with saved posts section in profile
- Comment on board threads directly from the feed (inline, uses BoardPost model)
- Profile photo grid tab with two sections: Albums grid and Photos in Posts (3-column Instagram-style)
- Follower/Following counts displayed as stats row on profile; clickable links to list pages
- Profile "About" tab with bio, interests, habits, location, and pet details
- Unfriend action (silent removal, no notification to the unfriended user)
- Report post, comment, and thread (reason picker: Spam, Harassment, Hate speech, Nudity, Violence, Other)
- Multiple pets support (up to 5 additional pets per user, displayed below main pet card)
- Group chats (create group, select friends, group name/photo, WebSocket broadcast to all members)
- Mentions (`@username` parsing, clickable profile links, mention notifications, autocomplete in forms)
- Onboarding tutorial (4-step interactive overlay: Feed, Explore, Chat, Create; re-triggerable from menu)
**Messaging**
- Chat message reactions (emoji picker on long-press, displayed below message bubbles, real-time via WebSocket)
- Chat message editing (within 15-minute window, inline edit, `edited_at` timestamp) and soft deletion (`is_deleted` flag)
- Chat typing indicators ("typing..." with debounce, broadcast via WebSocket, auto-clear after 3s)
- Chat conversation search (client-side message filtering with text highlighting)
**UX & Polish**
- Registration progress indicator (step bar with current/total steps, Back button between steps)
- Login page improvements ("Remember me" checkbox, "Forgot password?" link, social login buttons)
- Empty states improvement (pet-themed SVG illustrations, contextual messages, CTA buttons)
- Notification preferences (per-type toggles: friend request, friend accept, like, comment, message, mention)
- Consistent avatar rendering across all templates (standardized on `_avatar_with_status.html` partial)
- Toast notifications for all actions (friend requests, posts, comments, settings, etc.)
- Explore page added to bottom navigation (reorganized nav: Feed, Chat, Explore, Alerts, More)
- Trending hashtags section on explore page
- Online status indicator on avatars (green dot for active < 5 min)
- Online status improvement with "Last seen" text and color-coded indicators (green/yellow/gray)
- Case-insensitive username for login and registration (normalized to lowercase)
- Email hidden from public and own profile pages (visible only on edit page and admin)
- Search filters (pet type chips, country/city text inputs, URL-preserved filter state)
- Breed matching in friend suggestion algorithm (10% weight, exact and substring matching)
- "Refresh suggestions" button with 5-second cooldown
- "Near me" filter on suggestions and explore pages (same-city filtering)
- Image paste from clipboard (Ctrl+V) for statuses, replies, board topics, and board replies
- Clickable link rendering (`linkify`) in Event and Board posts and their replies
- Jump to new reply button in Board thread detail
- Date of birth and Gender fields on user profile
- Localized date format on profile (per country)
- Help text beneath registration form fields
- Extensive translations for all 9 supported languages (English, Español, Srpski latinica, Српски, Hrvatski, Deutsch, Français, Română, Русский)
**Admin & Moderation**
- Stories expiry control (admin toggle, `stories_expire_hours` in SiteSettings, default disabled/0, `expire_stories` management command)
- Advanced analytics dashboard (user growth, engagement metrics, content counts, DAU/WAU, 30-day trends via Chart.js, top content, pending reports; 5-minute cache)
- Admin content moderation (tabbed interface: Posts, Comments, Stories, Photos, Messages; edit/delete posts and comments, delete stories/photos, read-only message viewing; full audit logging)
- Admin direct user management (view/edit user profiles from admin panel)
- Admin friend management (accept, reject, cancel, unfriend on behalf of users; silent, no notifications)
- Ban/Suspend system (`UserBan` model with temporary/permanent bans, `BanMiddleware`, ban page, `auto_unban` management command, ban history, escalation hints)
- Content pinning (admin can pin up to 3 posts globally and 1 thread per board category; pinned content appears at top with pin icon)
- Enhanced reports page (reporter/reported history badges, serial reporter flag, bulk resolve/dismiss, AJAX card updates, pending count badge on navbar)
- User warning system (`UserWarning` model, warn from user detail page, system notification to warned user, escalation hint at 3+ warnings in 30 days)
- Admin user impersonation (`ImpersonationMiddleware`, 2-hour auto-expiry, orange banner, safety checks, full audit logging)
**Technical**
- Image lazy loading (`loading="lazy"`) on all feed, explore, and profile images
- Thumbnail generation for uploaded images (avatars 150x150, feed 600x600, comments 400x400)
- Feed query optimization (`select_related`/`prefetch_related` for all FK/M2M, N+1 elimination)
- Browser caching for static assets (`ManifestStaticFilesStorage`, `Cache-Control` headers)
- Translations audit for all user-facing strings across 9 languages
- Docker `entrypoint.sh` to run migrations on container startup
### CHANGED
**Layout & Theming**
- Layout & theme simplification: reduced from 5 layouts × 7 themes to 2 layouts (Mobile, Classic) × 2 themes (Light, Dark)
- Layout is now automatic (mobile device → Mobile, desktop → Classic); no user-facing layout switcher
- Theme is user choice (Light/Dark toggle in settings, follows `prefers-color-scheme` as default)
- Renamed "Mobile First" layout to "Mobile"
- Renamed "Color Themes" to "Appearance" and "Layout" to "Theme"
**Registration & Profile**
- Country field changed from free-text to dropdown list with all countries; auto-selected via Geo-IP during registration
- Breed field changed from free-text to dropdown list (populated with known breeds per pet type)
- Gender field moved above Age in registration and profile forms
- "Age in Years" renamed to "Birth Date" (date picker instead of slider)
- Language field removed from user profile (language changed only via dropdown menu)
- Email address hidden from profile pages when privacy is Private or Friends Only
- Serbian language mapping: Cyrillic → `sr`, Latin → `sr-lat`
- Default language for Serbian IP addresses set to Serbian Cyrillic
- Mobile start page for unauthenticated users shows language selector in upper-right corner
**Navigation**
- Renamed "Message Board" to "Board"
- Added Board icon; Board appears before Profile on mobile theme
- Navbar overhaul: reduced from 7 to 5 standard buttons (Feed, Chat, Explore, Alerts, More) with three-dot "More" menu
- Added Friend button next to "Find Friends" button
- Added board page header spacing
**Admin**
- Major admin management UX overhaul and optimization
- Reorganized admin page, made it more compact
- Changed report button placement and operation to match better UX (overflow `⋮` menu per industry standard)
- Changed avatar placement strategy to prevent future breakage
- Reaction emoticons appearance updated
### FIXED
- Appropriately serving mobile theme to mobile users and desktop theme to desktop users; default theme during registration now depends on device
- Geo-IP detection (added `GeoLite2-Country.mmdb`)
- Broken notification badges on mobile view
- Broken Alerts page on mobile view
- Broken avatar display of users on Friend page
- Avatar appearance and spacing issues (multiple fixes across avatar preview, deletion, default avatar override, and reaction visibility)
- Bug with setting avatar after a default one was in effect
- Bug with user profile cards on Suggestions page
- Bug where no breed was available to select for a pet type
- Unintuitive profile details menu item
- Horizontal centering of loading (spinner) icon
- Incorrect avatar look, images in replies, and incorrectly selected buttons
- Nasty bug with layout ordering of online status, username, timestamp, and views counter
- Nasty bug with spacing and zooming/stretching on thread posts with images
- Share menu not showing on Thread posts and their replies
- Share menu height on thread posts
- Alignment of like, reply, share, and save buttons
- Avatar look and like reaction visibility bugs
- Showing report option on Event and Thread posts and their replies/comments
- Two bugs about avatar looks and logout from three-dots menu
- Logout from three-dots menu
### REMOVED
- Redundant plus sign on Events page (title with icon now horizontally centered)
- Layouts: Modern, Minimal, Playful (consolidated to Mobile and Classic)
- Color themes: Pink, Blue, Sunset, Forest, Ocean (consolidated to Light and Dark)
- Language field from user profile (replaced by language dropdown menu)
- "Board" link from profile page (moved to top navbar)
- Auto-run migrations at Docker build time (reverted; migrations now run via `entrypoint.sh` at container startup)
- `theme_override` and `layout_override` fields from CustomUser model
- Device-specific default layout/theme fields from SiteSettings model
---
All notable changes to Reponje, from v0.2 to v0.8.
## [v0.8] — 2026-07-29
### ADDED
**Mobile Experience**
- Pull-to-refresh on feed and list pages (feed, conversations, notifications, explore)
- Full-screen Instagram-style Stories Viewer with progress bars, auto-advance, and tap navigation
- Infinite scroll on feed and explore pages (IntersectionObserver-based, preserves pagination fallback)
- Haptic feedback on key actions (like, comment, story swipe, FAB tap) via `navigator.vibrate()`
- Bottom sheet for FAB and action menus (slide-up with backdrop, dismiss on tap/swipe-down)
- Skeleton loading states during AJAX loading (feed, explore, profile)
**Social Features**
- Share as repost (Share to own feed) with attribution display
- Hashtag support (`#hashtag` parsing, clickable links, hashtag search view)
- Post bookmarking (Save) with saved posts section in profile
- Comment on board threads directly from the feed (inline, uses BoardPost model)
- Profile photo grid tab with two sections: Albums grid and Photos in Posts (3-column Instagram-style)
- Follower/Following counts displayed as stats row on profile; clickable links to list pages
- Profile "About" tab with bio, interests, habits, location, and pet details
- Unfriend action (silent removal, no notification to the unfriended user)
- Report post, comment, and thread (reason picker: Spam, Harassment, Hate speech, Nudity, Violence, Other)
- Multiple pets support (up to 5 additional pets per user, displayed below main pet card)
- Group chats (create group, select friends, group name/photo, WebSocket broadcast to all members)
- Mentions (`@username` parsing, clickable profile links, mention notifications, autocomplete in forms)
- Onboarding tutorial (4-step interactive overlay: Feed, Explore, Chat, Create; re-triggerable from menu)
**Messaging**
- Chat message reactions (emoji picker on long-press, displayed below message bubbles, real-time via WebSocket)
- Chat message editing (within 15-minute window, inline edit, `edited_at` timestamp) and soft deletion (`is_deleted` flag)
- Chat typing indicators ("typing..." with debounce, broadcast via WebSocket, auto-clear after 3s)
- Chat conversation search (client-side message filtering with text highlighting)
**UX & Polish**
- Registration progress indicator (step bar with current/total steps, Back button between steps)
- Login page improvements ("Remember me" checkbox, "Forgot password?" link, social login buttons)
- Empty states improvement (pet-themed SVG illustrations, contextual messages, CTA buttons)
- Notification preferences (per-type toggles: friend request, friend accept, like, comment, message, mention)
- Consistent avatar rendering across all templates (standardized on `_avatar_with_status.html` partial)
- Toast notifications for all actions (friend requests, posts, comments, settings, etc.)
- Explore page added to bottom navigation (reorganized nav: Feed, Chat, Explore, Alerts, More)
- Trending hashtags section on explore page
- Online status indicator on avatars (green dot for active < 5 min)
- Online status improvement with "Last seen" text and color-coded indicators (green/yellow/gray)
- Case-insensitive username for login and registration (normalized to lowercase)
- Email hidden from public and own profile pages (visible only on edit page and admin)
- Search filters (pet type chips, country/city text inputs, URL-preserved filter state)
- Breed matching in friend suggestion algorithm (10% weight, exact and substring matching)
- "Refresh suggestions" button with 5-second cooldown
- "Near me" filter on suggestions and explore pages (same-city filtering)
- Image paste from clipboard (Ctrl+V) for statuses, replies, board topics, and board replies
- Clickable link rendering (`linkify`) in Event and Board posts and their replies
- Jump to new reply button in Board thread detail
- Date of birth and Gender fields on user profile
- Localized date format on profile (per country)
- Help text beneath registration form fields
- Extensive translations for all 9 supported languages (English, Español, Srpski latinica, Српски, Hrvatski, Deutsch, Français, Română, Русский)
**Admin & Moderation**
- Stories expiry control (admin toggle, `stories_expire_hours` in SiteSettings, default disabled/0, `expire_stories` management command)
- Advanced analytics dashboard (user growth, engagement metrics, content counts, DAU/WAU, 30-day trends via Chart.js, top content, pending reports; 5-minute cache)
- Admin content moderation (tabbed interface: Posts, Comments, Stories, Photos, Messages; edit/delete posts and comments, delete stories/photos, read-only message viewing; full audit logging)
- Admin direct user management (view/edit user profiles from admin panel)
- Admin friend management (accept, reject, cancel, unfriend on behalf of users; silent, no notifications)
- Ban/Suspend system (`UserBan` model with temporary/permanent bans, `BanMiddleware`, ban page, `auto_unban` management command, ban history, escalation hints)
- Content pinning (admin can pin up to 3 posts globally and 1 thread per board category; pinned content appears at top with pin icon)
- Enhanced reports page (reporter/reported history badges, serial reporter flag, bulk resolve/dismiss, AJAX card updates, pending count badge on navbar)
- User warning system (`UserWarning` model, warn from user detail page, system notification to warned user, escalation hint at 3+ warnings in 30 days)
- Admin user impersonation (`ImpersonationMiddleware`, 2-hour auto-expiry, orange banner, safety checks, full audit logging)
**Technical**
- Image lazy loading (`loading="lazy"`) on all feed, explore, and profile images
- Thumbnail generation for uploaded images (avatars 150x150, feed 600x600, comments 400x400)
- Feed query optimization (`select_related`/`prefetch_related` for all FK/M2M, N+1 elimination)
- Browser caching for static assets (`ManifestStaticFilesStorage`, `Cache-Control` headers)
- Translations audit for all user-facing strings across 9 languages
- Docker `entrypoint.sh` to run migrations on container startup
### CHANGED
**Layout & Theming**
- Layout & theme simplification: reduced from 5 layouts × 7 themes to 2 layouts (Mobile, Classic) × 2 themes (Light, Dark)
- Layout is now automatic (mobile device → Mobile, desktop → Classic); no user-facing layout switcher
- Theme is user choice (Light/Dark toggle in settings, follows `prefers-color-scheme` as default)
- Renamed "Mobile First" layout to "Mobile"
- Renamed "Color Themes" to "Appearance" and "Layout" to "Theme"
**Registration & Profile**
- Country field changed from free-text to dropdown list with all countries; auto-selected via Geo-IP during registration
- Breed field changed from free-text to dropdown list (populated with known breeds per pet type)
- Gender field moved above Age in registration and profile forms
- "Age in Years" renamed to "Birth Date" (date picker instead of slider)
- Language field removed from user profile (language changed only via dropdown menu)
- Email address hidden from profile pages when privacy is Private or Friends Only
- Serbian language mapping: Cyrillic → `sr`, Latin → `sr-lat`
- Default language for Serbian IP addresses set to Serbian Cyrillic
- Mobile start page for unauthenticated users shows language selector in upper-right corner
**Navigation**
- Renamed "Message Board" to "Board"
- Added Board icon; Board appears before Profile on mobile theme
- Navbar overhaul: reduced from 7 to 5 standard buttons (Feed, Chat, Explore, Alerts, More) with three-dot "More" menu
- Added Friend button next to "Find Friends" button
- Added board page header spacing
**Admin**
- Major admin management UX overhaul and optimization
- Reorganized admin page, made it more compact
- Changed report button placement and operation to match better UX (overflow `⋮` menu per industry standard)
- Changed avatar placement strategy to prevent future breakage
- Reaction emoticons appearance updated
### FIXED
- Appropriately serving mobile theme to mobile users and desktop theme to desktop users; default theme during registration now depends on device
- Geo-IP detection (added `GeoLite2-Country.mmdb`)
- Broken notification badges on mobile view
- Broken Alerts page on mobile view
- Broken avatar display of users on Friend page
- Avatar appearance and spacing issues (multiple fixes across avatar preview, deletion, default avatar override, and reaction visibility)
- Bug with setting avatar after a default one was in effect
- Bug with user profile cards on Suggestions page
- Bug where no breed was available to select for a pet type
- Unintuitive profile details menu item
- Horizontal centering of loading (spinner) icon
- Incorrect avatar look, images in replies, and incorrectly selected buttons
- Nasty bug with layout ordering of online status, username, timestamp, and views counter
- Nasty bug with spacing and zooming/stretching on thread posts with images
- Share menu not showing on Thread posts and their replies
- Share menu height on thread posts
- Alignment of like, reply, share, and save buttons
- Avatar look and like reaction visibility bugs
- Showing report option on Event and Thread posts and their replies/comments
- Two bugs about avatar looks and logout from three-dots menu
- Logout from three-dots menu
### REMOVED
- Redundant plus sign on Events page (title with icon now horizontally centered)
- Layouts: Modern, Minimal, Playful (consolidated to Mobile and Classic)
- Color themes: Pink, Blue, Sunset, Forest, Ocean (consolidated to Light and Dark)
- Language field from user profile (replaced by language dropdown menu)
- "Board" link from profile page (moved to top navbar)
- Auto-run migrations at Docker build time (reverted; migrations now run via `entrypoint.sh` at container startup)
- `theme_override` and `layout_override` fields from CustomUser model
- Device-specific default layout/theme fields from SiteSettings model
---
0 Respuestas
Aún no hay respuestas.
Iniciar sesión para responder.