Changelog

v0.4.0

🔐 Beta Access System

Comprehensive beta access management and control

  • AddedBeta mode configuration and access control - implement beta mode configuration with isBetaModeEnabled() function to check beta mode status and isBetaPrivilegedEmail() to identify admin users.
  • AddedAI feature access control - add shouldLockAi() to control AI feature access during beta and isBetaModeClient() for client-side beta mode detection.
  • AddedComprehensive beta access code management - implement createBetaAccessCodes() for generating unique access codes, redeemBetaAccessCode() for code redemption with validation, and revokeBetaAccessCode() for code revocation.
  • AddedBeta access code verification API - add POST /api/beta/verify-code endpoint for code redemption with authentication validation and IP address extraction from multiple headers.
  • AddedBeta access control in middleware - check beta mode status before allowing access, validate beta access via cookie or JWT token, and redirect non-beta users to coming-soon page.
  • AddedBeta portal transformation - transform coming-soon page into beta portal with code redemption form, waitlist registration, beta statistics display, and step-by-step onboarding guide.
  • AddedReal-time beta statistics - add beta stats broadcasting via Socket.IO with /beta namespace for real-time beta statistics and active beta user count broadcasting.
  • AddedBeta user presence tracking - track active beta users in real-time with getActiveBetaUserCount() for statistics and support beta stats broadcasting integration.
  • AddedWaitlist and stats API endpoints - add POST /api/beta/apply endpoint for waitlist registration and GET /api/beta/stats endpoint for beta statistics.
  • AddedAI feature locking during closed beta - lock AI content generation for non-privileged users during beta with 403 error and beta_mode_locked message, allow privileged admin emails to use AI features.
  • AddedBeta lock UI for AI features - add beta lock UI for AI contents page, post form, and community post creator with tooltip support for disabled AI features.

☁️ Cloudflare R2 Storage Integration

Optimized image storage and delivery

  • AddedCloudflare R2 storage integration - add uploadImageToR2() for single image uploads, uploadMultipleImagesToR2() for batch image uploads with optimized, small, medium, and large sizes.
  • AddedR2 storage utilities - add deleteImageFromR2() for image deletion, imageExistsInR2() for existence checks, and getR2ImageUrl() for public URL generation with S3-compatible API support.
  • AddedR2 integration for post images - upload images to Cloudflare R2 instead of database bytes, store R2 URLs in PostImage model with optimizedUrl, smallUrl, mediumUrl, and largeUrl fields.
  • AddedR2 URL redirect for optimized images - check for optimizedUrl in PostImage before serving from database, redirect to R2 URL if available with 302 redirect and cache headers.
  • AddedR2 URL redirect for responsive sizes - check for R2 URLs (smallUrl, mediumUrl, largeUrl) before serving from database, redirect to appropriate R2 URL based on requested size.
  • AddedFallback to database storage - support fallback to database storage if R2 upload fails, maintain backward compatibility with existing image serving.

🗄️ Database & Infrastructure Improvements

Production-ready database configuration

  • AddedPrisma models organization - organize Prisma models into separate files (beta-models, chat-models, community-models, content-models, moderation-models, system-models, user-models) for better maintainability.
  • AddedPostgreSQL configuration for Vercel - update Prisma schema to use PostgreSQL for Vercel deployment with proper compatibility configuration.
  • AddedPrisma Accelerate support - add Prisma Accelerate support with build time migrations skip and DIRECT_URL usage for direct database connections.
  • FixedDATABASE_URL validation - fix DATABASE_URL validation for Prisma Data Platform connection strings with proper error handling.
  • AddedBeta access and R2 storage schema fields - add BetaAccessCode, BetaAccessLog, and Waitlist models, add hasBetaAccess, betaAccessGrantedAt, betaAccessCodeId to User model, and optimizedUrl, smallUrl, mediumUrl, largeUrl to PostImage model.
  • RemovedDeprecated models.prisma file - remove deprecated models.prisma file and consolidate into schema.prisma for simplified database schema management.

👨‍💼 Admin Panel & Management

Beta access management interface

  • AddedAdmin panel for beta access management - add admin UI for beta access code management with API routes for admin operations (/api/admin/beta-codes).
  • AddedBetaCodeManager component - add BetaCodeManager component with full CRUD operations for code creation, listing, and revocation with waitlist management functionality.
  • AddedAdmin-beta message translations - add admin-beta namespace for admin panel translations with Turkish and English support for beta management UI messages.

🔒 Security & Performance

Production security and logging improvements

  • AddedSecure logging utility - add secure logger for production-safe logging to prevent PII exposure in production logs with structured logging and error codes.
  • improvedProduction logging improvements - improve production logging for block operations, only log user IDs in development environment, and prevent PII exposure in production logs.
  • FixedAdmin email cache refresh - fix production admin email control cache refresh issue for admin email validation and improve beta access service cache management.

🐛 Bug Fixes & Stability

Critical fixes for mobile, authentication, and permissions

  • FixedPublic community comment permission - fix comment posting permission for public communities and ensure proper permission checks for community comments.
  • FixedBeta code cookie guarantee - add hard redirect after beta code redemption to ensure cookie is properly set before redirect and improve beta access flow reliability.
  • FixedWebSocket upgrade requests - add Socket.IO path bypass for WebSocket upgrade requests to support WebSocket connections through proxy and improve real-time communication reliability.
  • FixedMobile navigation authentication - fix authentication check in mobile navigation, improve mobile navigation reliability, and ensure proper authentication state handling.
  • FixedMobile beta access control - fix beta access control for mobile devices, improve cookie management on mobile, and ensure beta access works correctly on mobile platforms.
  • FixedDATABASE_URL client-side error - fix client-side DATABASE_URL error and admin beta access issues with improved error handling for database connections.
  • FixedAdmin path regex - fix admin path regex to recognize sub-paths like /tr/admin/beta, improve admin path matching, and support localized admin paths.
  • FixedCSP directives update - update CSP directives to allow Google Fonts, add Google Ads permissions to CSP, and improve content security policy configuration.

🎯 UI/UX Improvements

Layout, styling, and user experience enhancements

  • improvedCommunity page layout - adjust community page layout and spacing by changing masonry grid columns from [1, 2, 2] to [1, 1, 1] for single column layout and reducing sidebar spacing.
  • AddedPost card styling - add post card styling overrides with post-card[data-slot='card'] styles for consistent card appearance, remove default card background, border, and shadow.
  • RemovedUnused EchoPostCard component - remove unused EchoPostCard component and clean up unused component code.
  • AddedInfinite scroll and scroll-to-top - add scroll event listener for automatic content loading when user is 300px from bottom, add scroll-to-top function for manual refresh with smooth scrolling.
  • AddedChat panel disabled on beta landing - hide chat panel on coming-soon/beta landing pages, prevent chat panel toggle events on beta landing, and add pathname check for beta landing detection.
  • improvedMinor UI component updates - update component dependencies and imports, improve code consistency across UI components with minor styling and functionality improvements.

🔐 Permission System Refactoring

Simplified permission model

  • RemovedEDIT_ANY_POST permission removal - remove EDIT_ANY_POST from CommunityPermission enum, ADMIN role permissions, and permission override logic.
  • improvedPost editing simplification - only allow post authors to edit their own posts, simplify permission logic for post editing, and improve error messaging for unauthorized edit attempts.
  • RemovedEDIT_ANY_POST permission translations - remove editAnyPost permission from English and Turkish translations, remove editAnyPost action from post translations, and clean up unused permission strings.

🌐 Internationalization

Beta and admin translations

  • AddedBeta locked messages for AI features - add betaLocked section with title, description, and callout for AI features with Turkish and English translations.
  • AddedComing-soon messages for beta portal - replace marketing content with beta portal messages, add beta code form translations, waitlist registration translations, and beta statistics labels.
  • AddedAdmin-beta message namespace - add admin-beta message namespace with import adminBeta messages in English and Turkish for admin panel translations.

🔧 Build & Development

Development tooling and configuration

  • AddedBeta mode and R2 storage environment variables - add NEXT_PUBLIC_BETA_MODE for beta mode toggle, BETA_ADMIN_EMAILS for privileged user access, and CLOUDFLARE_R2_* variables for R2 storage configuration.
  • AddedDependencies update for R2 storage - add @aws-sdk/client-s3 for Cloudflare R2 integration, update package-lock.json with new dependencies, and support S3-compatible storage API.
  • improvedSchema generation script update - update script to work with new schema structure, remove references to deprecated models.prisma, and improve schema generation workflow.
  • improvedNext.js type definitions - update Next.js environment type definitions and sync with latest Next.js version requirements.

v0.3.9

🔐 Community Membership Approval System

Access control and membership workflow

  • AddedCommunity membership approval for chat access - implement community membership approval for chat access with memberApprovalRequired check.
  • AddedMembership approval enforcement - require community membership for private community chats and deny access with 403 error for non-approved users.
  • AddedMessage access control - enforce membership approval for message access and posting, block message viewing for non-members when memberApprovalRequired is true.
  • AddedMember role calculation enhancement - enhance member role calculation with approval system, add memberApprovalRequired check in member listing endpoint.
  • AddedRole recalculation for guests - implement role recalculation for guest users who became members and update member roles in database when community membership is detected.
  • AddedAccess denied state management - add access denied state management to chat messages hook to track community approval requirements.
  • AddedError handling for access denied - handle access denied errors without throwing exceptions and reset access denied state on successful message fetch.
  • AddedCommunity join request UI - add community join request UI for access denied scenarios with 'Apply to Join Community' button for authenticated users.
  • AddedAuthentication flow for access denied - add 'Sign Up/Login' link for unauthenticated users and implement join request submission with approval workflow.
  • AddedMultilingual access messages - show appropriate messaging in Turkish and English for community access and approval scenarios.

📰 Google AdSense Integration

Monetization foundation

  • AddedGoogle AdSense integration - add Google AdSense integration to application layout with google-adsense-account meta tag.
  • AddedPublisher account identification - enable AdSense publisher account identification through meta tag integration.
  • AddedMonetization foundation - prepare foundation for ad monetization features with proper meta tag configuration.

🎨 Retro Theme Support

New theme variant for chat components

  • AddedRetro theme for chat components - add retro theme support for chat components with retro theme colors for chat message bubbles.
  • AddedChat-specific CSS classes - add chat-specific CSS classes for retro styling with both light and dark retro variants.
  • AddedHover effects and transitions - add hover effects and transitions for chat elements to enhance user experience.
  • AddedCompact mode integration - enable compact mode integration with retro theme for better space utilization.

🎯 UI/UX Improvements

Compact mode, avatar controls, and visual balance

  • AddedCSS class support for chat components - add CSS class support for chat components with chat-input class to ChatInput and chat-panel class to ChatPanel.
  • AddedTheme targeting for chat interface - enable retro theme application to chat interface elements while maintaining backward compatibility with existing styling.
  • AddedCompact mode implementation - implement compact mode and avatar visibility controls with reduced padding and gaps for better space utilization.
  • AddedDynamic avatar visibility - implement dynamic avatar visibility based on user settings with CSS custom properties for chat display settings.
  • AddedTheme-aware message styling - update message bubble styling with theme-aware classes and improve responsive behavior in compact mode.
  • FixedMasonry grid spacing optimization - adjust masonry grid spacing for better visual balance by reducing gap values from [16, 20, 28] to [5, 5, 5].
  • improvedVisual consistency across screen sizes - improve visual consistency across different screen sizes and optimize spacing for community posts display.

🌐 Internationalization

Community access and approval translations

  • AddedCommunity access translations - add English translations for community access messages with proper error handling for access denied scenarios.
  • AddedMembership approval workflow translations - add Turkish translations for membership approval workflow with success/failure messages for join requests.
  • AddedError messages for access scenarios - include error messages for access denied scenarios and support both authenticated and unauthenticated user flows.
  • AddedJoin request messaging - add success/failure messages for join requests with appropriate messaging in Turkish and English.

🔧 Build & Development

TypeScript and development improvements

  • FixedNext.js development types path - update Next.js development types path from .next/types/routes.d.ts to .next/dev/types/routes.d.ts.
  • AddedLatest Next.js type definitions - align with latest Next.js development type definitions and ensure proper TypeScript support for Next.js routes.

v0.3.8

💬 Chat System

Reply functionality, sub-channels, and real-time improvements

  • AddedChat message reply functionality - add replyToId field to ChatMessage model for message replies.
  • AddedReply threading support - add replyTo and replies relations for message threading.
  • AddedCHAT_REPLY notification type - add CHAT_REPLY notification type for reply notifications.
  • AddedReply preview component - add reply preview and cancel functionality in chat input.
  • AddedReply display styling - enhance reply display with preview styling and deleted message handling.
  • AddedReply integration - integrate reply functionality across chat components (ChatMessages, ChatPanel, ChatRoomList).
  • AddedUnread message count - add unread message count to room listing API.
  • AddedReal-time unread count updates - implement real-time unread count updates via socket in chat hooks.
  • AddedUnread count badges - update ChatRoomList to display unread count badges.
  • ChangedSystem notifications via socket - refactor system notifications to send via socket instead of database.
  • AddedFilter system notifications - filter out SYSTEM_HIDE_NOTIFICATION messages from database queries.
  • AddedSub-channel visibility control - add visibility control for private sub-channels (only community owner can see).
  • AddedSub-channel management - add sub-channel management and settings update support (isPrivate, deletion permissions).
  • AddedSub-channel message access control - allow parent channel members to access public sub-channel messages.
  • AddedMANAGE_CHAT_ROOMS permission checks - add MANAGE_CHAT_ROOMS permission checks for chat room creation, update, and deletion.
  • AddedDELETE_MESSAGES permission check - add DELETE_MESSAGES permission check for non-sender message deletions.
  • AddedAI-generated message deletion protection - prevent deletion of AI-generated messages (only reporting allowed).
  • AddedURL security checks - add URL security checks in chat input and malicious link detection.
  • AddedChat components improvements - enhance ChatInput, ChatMessage, ChatMessages, ChatPanel, ChatRoomList, and RoomSettingsModal components.
  • AddedMessage rendering and animation improvements - improve message rendering and animations.
  • AddedRoom settings modal enhancements - add sub-channel management UI support to room settings modal.
  • AddedChat hooks improvements - add real-time updates and sub-channel support to useChatMessages and useChatRooms hooks.
  • AddedSocket event listeners - add socket event listeners for room updates.
  • AddedSub-channel filtering and management - add sub-channel filtering and management support.
  • AddedMessage fetching with permission checks - improve message fetching with permission checks.
  • AddedChat security service integration - add URL security service integration and improve malicious link detection.
  • AddedSecurity checks for chat messages - add security checks for chat messages.
  • AddedChat translations updates - add new chat feature translations, update room management labels, and add sub-channel related translations.
  • AddedSub-channel message access control endpoint - add sub-channel message access control and improve permission validation.
  • AddedParent channel membership checks - add support for parent channel membership checks.
  • AddedCustom role and badge display - include customRoleName and badge in message sender data.
  • AddedRole and badge fetching - fetch community member roles and badges for message senders.
  • AddedMessage role information - add role and badge information to message response.
  • AddedReal-time role/badge updates - include customRoleName and badge in socket message broadcast.
  • AddedCommunity membership queries - query community membership for role/badge information.
  • AddedRoom members pagination - add pagination support with page and limit parameters.
  • AddedPagination metadata - return pagination metadata (total, page, limit, hasMore).
  • AddedBackward compatibility - maintain backward compatibility with existing clients.
  • AddedRoom members list component - create new component for displaying room members.
  • AddedMember list pagination - support pagination for large member lists.
  • AddedOnline users display - pass onlineUsers prop to RoomSettingsModal.
  • AddedReal-time online tracking - support real-time online user tracking.

🔒 Security Enhancements

JWT validation, encryption, and comprehensive rate limiting

  • AddedJWT secret validation - enforce JWT secret validation and minimum 32 character length requirements.
  • AddedRequire JWT secret - require NEXTAUTH_SECRET or JWT_SECRET environment variable.
  • AddedDescriptive secret errors - throw descriptive errors for missing or weak secrets.
  • AddedUser-based rate limiting - add user-based rate limiting for authenticated requests.
  • AddedNextAuth session verification - integrate NextAuth session verification for token validation.
  • AddedRate limit tracking - track rate limits per user ID with in-memory storage.
  • AddedRate limit headers - return proper rate limit headers (X-RateLimit-*) in responses.
  • AddedENCRYPTION_KEY documentation - add ENCRYPTION_KEY environment variable documentation with critical security warnings.
  • AddedENCRYPTION_KEY validation - enforce ENCRYPTION_KEY validation and production requirements (minimum 32 characters).
  • AddedToken encryption functions - add encryptToken() and decryptToken() functions for database storage.
  • AddedSecure Google token storage - encrypt Google access tokens before database storage.
  • AddedAI content deletion protection - prevent deletion of AI-generated posts (only reporting allowed).
  • AddedDELETE_ANY_POST permission check - add DELETE_ANY_POST permission check for non-author post deletions.
  • AddedCommunity membership validation - add community membership check for permission validation.
  • AddedURL security validation service - implement comprehensive URL validation and security checks.
  • AddedMalicious URL detection - detect malicious and suspicious URLs before sharing.

🗄️ Database & Infrastructure

PostgreSQL production optimizations and build improvements

  • AddedPostgreSQL SSL - add PostgreSQL SSL and connection pooling to docker-compose.yml.
  • AddedSSL mode require - add sslmode=require to DATABASE_URL for production security.
  • AddedConnection pooling - add connection_limit=10 and pool_timeout=20 parameters.
  • AddedCVE-2025-8713 fix note - update PostgreSQL image comment with CVE-2025-8713 fix note.
  • AddedProduction PostgreSQL validation - add production PostgreSQL validation and logging.
  • AddedValidate DATABASE_URL - validate DATABASE_URL presence in production environment.
  • AddedCheck SSL parameters - check SSL parameters for PostgreSQL connections.
  • AddedConnection pooling warnings - warn about missing connection pooling parameters.
  • AddedReduce logging verbosity - reduce logging verbosity in production (error and warn only).
  • AddedSupport PostgreSQL and SQLite - support both PostgreSQL and SQLite connection types.
  • AddedGoogle OAuth token fields - add googleAccessToken and tokenExpiresAt fields to User model.
  • AddedDocker build optimization - add optimization for Docker build to work without database connection (NEXT_PHASE support).
  • AddedBuild phase support - add NEXT_PHASE=phase-production-build support to skip DB validation during build phase.
  • ChangedDIRECT_URL optional - make DIRECT_URL optional in Prisma schema generation (only add if present).
  • AddedBuild-time migration skip - skip migrations for build-time placeholder DATABASE_URL.
  • AddedCustom role system database fields - add customRoleName, customPermissions, and badge fields to CommunityMember model.
  • AddedCommunityBadge enum - add CommunityBadge enum for SHIELD, CROWN, STAR, MEDAL, TROPHY badges.
  • AddedPost edit tracking - add editedBy and editedAt fields to Post model for edit tracking.
  • AddedCommunity member list visibility - add showMembersList field to Community model (default: true).
  • AddedMember list visibility control - support member list visibility control for communities.
  • AddedPost edit history tracking - track post edit history with user ID and timestamp.

🔌 Socket & Real-time

JWT authentication and notification improvements

  • AddedSocket JWT authentication - implement JWT authentication for socket connections using NEXTAUTH_SECRET.
  • AddedConnection rate limiting - add connection rate limiting middleware (5 connections/min in production).
  • AddedEvent rate limiting - implement user-based event rate limiting (100 events/min per user).
  • AddedReal-time notification function - add sendRealtimeNotification function for socket-based notifications.
  • AddedReply notifications - send reply notifications to original message sender.
  • AddedPersonal notification rooms - add user personal notification room support.
  • AddedJoin notification rooms - join users to personal notification room (user:userId) on connection.
  • AddedTargeted notifications - enable targeted notification delivery to specific users.
  • RemovedRemove console.log statements - remove console.log statements for production readiness.
  • AddedReal-time room updates - add real-time room updates via socket and sub-channel support.

🎨 UI/UX Improvements

Reply UI, sub-channels, animations, and unread count badges

  • AddedReply preview with sender - add reply preview component with sender name and message content.
  • AddedCancel reply button - add cancel reply button with X icon.
  • AddedReply preview styling - display reply preview with border and background styling.
  • AddedDeleted message handling - support deleted message handling in reply preview.
  • AddedUser profile links - add link to replied-to user profile when username available.
  • AddedVisual hierarchy improvements - improve visual hierarchy with muted background and border accent.
  • AddedRoom settings editing form - add editable room settings form for sub-channels (name, description, maxMembers, isPrivate).
  • FixedDialog z-index fix - prevent room settings dialog from appearing behind post creator component (z-50 -> z-[70]).
  • ChangedMessage animation optimization - reduce message animation duration (spring -> 0.15s easeOut) and remove delays.
  • ChangedContainer animation optimization - reduce loading animation duration (0.3s -> 0.15s) and remove y-axis animations.
  • AddedCustom roles and permissions management UI - add custom roles and permissions management component with searchable member list.
  • AddedCategorized permission selection - add categorized permission selection UI with visual cards and icons.
  • AddedBadge selection interface - add badge selection interface for SHIELD, CROWN, STAR, MEDAL, TROPHY.
  • AddedPost editing dialog - add post editing dialog with title and subject fields.
  • AddedPermission-based editing - implement permission checks for post editing (author or EDIT_ANY_POST permission).
  • AddedPersistent interaction states - add persistent interaction states using localStorage for liked/saved posts.
  • AddedInteraction persistence across reloads - track liked/saved posts across page reloads.
  • AddedContent label update - change title label to 'Content' in post editing as per user request.
  • improvedCommunity card interactions - improve community card interaction and display with better visual feedback.
  • FixedOnboarding modal z-index - fix z-index issues in onboarding modal dropdowns for proper layering.
  • AddedPersistent card effects - add persistent card interaction effects with light and dark theme support.
  • AddedRole-assigned communities card - add role-assigned communities card to homepage sidebar.
  • AddedManaged communities sidebar - add managed communities sidebar to user profile with grid layout.
  • AddedMember list visibility toggle - add member list visibility toggle to community settings.
  • AddedAPPROVE_POSTS permission - add APPROVE_POSTS permission to custom roles content category.
  • AddedCommunity members modal - add community members modal with role and badge display.

🧰 API & Configuration

Socket token endpoint, security improvements, and build optimizations

  • AddedSocket token endpoint - add socket token endpoint for JWT authentication.
  • AddedGenerate JWT tokens - generate JWT tokens for socket handshake validation.
  • AddedCSP and CORS enhancements - enhance CSP and CORS security settings.
  • AddedConditional CORS origin - make Access-Control-Allow-Origin conditional based on NODE_ENV.
  • AddedProduction CORS settings - use ALLOWED_ORIGINS or NEXTAUTH_URL in production, wildcard in development.
  • AddedGoogle Fonts CSP - add fonts.googleapis.com to style-src and style-src-elem CSP directives.
  • AddedFont source CSP - add fonts.googleapis.com to font-src CSP directive.
  • ChangedCSP unsafe-eval removal - remove unsafe-eval from CSP script-src directive and improve security.
  • FixedNext.js types import path - correct Next.js types import path for development.
  • AddedEnvironment variable validation - add environment variable validation utility.
  • AddedCentralized validation - create centralized environment variable validation.
  • AddedType-safe env access - provide type-safe environment variable access.
  • AddedURL security check endpoint - add endpoint for validating URL security before posting/sharing.
  • ChangedPostgreSQL port mapping removal - remove PostgreSQL and Redis port mappings for security (Docker internal only).
  • AddedEnvironment variable configuration updates - add new environment variables for custom role system and update validation schemas.
  • AddedEnvironment variable documentation - improve environment variable documentation.
  • AddedCI/CD workflow updates - update build and deployment steps and improve workflow efficiency.
  • AddedCommunity API endpoints updates - update settings and posts endpoints for custom role system.
  • AddedBackward compatibility - maintain backward compatibility in existing API endpoints.
  • AddedCommunity creation dialog cleanup - remove unused imports and clean up component code.
  • AddedChat settings tab updates - improve chat settings UI and add new chat configuration options.
  • AddedDelete confirmation dialog updates - improve dialog component and update styling and behavior.
  • AddedPost editing endpoint - add PATCH endpoint for updating posts with permission checks.
  • AddedRole-assigned communities API - add GET endpoint for fetching user's role-assigned communities.
  • AddedMember list visibility control - add member list visibility control in community members API.
  • AddedShow members list setting - add showMembersList setting to community settings API.
  • AddedCommunity list visibility - include showMembersList field in community list responses.
  • AddedRole assignment notifications - add notification system for custom role assignments.
  • AddedChat room pagination - add pagination support with page and limit parameters to room members endpoint.

🔔 Notifications

CHAT_REPLY support and data improvements

  • AddedCHAT_REPLY notification support - add CHAT_REPLY notification type support in hooks.
  • AddedUsername in notifications - include username field in actor interface.
  • AddedPost and actor IDs - add postId and actorId fields to notification interface.
  • AddedNotification data improvements - add username, postId, and actorId fields to notifications API.

👥 Custom Role System

Flexible permission management and community-specific roles

  • AddedCustom role system database fields - add customRoleName, customPermissions, and badge fields to CommunityMember model.
  • AddedCustom role permission system - implement custom role permission system that prioritizes customPermissions check.
  • AddedRemove unnecessary permissions - remove CREATE_POST and INVITE_MEMBERS permissions (unnecessary).
  • AddedMEMBER role default permissions - MEMBER role has no default permissions (empty array).
  • AddedCustom role management endpoint - add PUT endpoint for updating member custom roles, permissions, and badges.
  • AddedRole management restriction - restrict role management to community owners only.
  • AddedCustom roles and permissions management component - replace RolesPermissionsTab with CustomRolesPermissionsTab.
  • AddedSearchable member list - add searchable member list with username filtering.
  • AddedCategorized permission selection - add categorized permission selection UI with icons (Content, Members, Chat, Settings).
  • AddedVisual permission cards - add visual permission cards with checkmarks and icons.
  • AddedBadge selection - add badge selection for SHIELD, CROWN, STAR, MEDAL, TROPHY.
  • AddedMember mute/unmute endpoints - add POST and DELETE endpoints for muting/unmuting members with duration support.
  • AddedMUTE_MEMBERS permission - require MUTE_MEMBERS permission for mute operations.
  • AddedModeration action logs - create moderation action logs for audit trail.
  • AddedInvite link management - update invite link management to use MANAGE_INVITES permission.
  • AddedCustom roles system translations - add custom roles system translations for all UI labels.
  • RemovedDeprecated RolesPermissionsTab - remove old role-based permissions component.

🧹 Code Quality

Production readiness and cleanup

  • AddedSocket initialization improvements - improve socket initialization and cleanup in useChat hook.
  • AddedSocket reference storage - store socket reference in useRef for reliable cleanup.
  • AddedFix socket cleanup - fix socket cleanup to prevent memory leaks.
  • RemovedRemove debug logs - remove debug console.log statements from chat hooks.
  • AddedError logging preparation - add error logging and monitoring preparation in auth.
  • AddedStructured error logging - log user persistence failures with structured error information.
  • AddedError metadata - include user email, userId, and timestamp in error logs.
  • AddedSentry integration TODO - add TODO comment for Sentry integration in production.
  • RemovedAdmin panel components and routes - remove admin dashboard pages, API endpoints, and UI components.
  • RemovedAdmin translations - remove admin translations and clean up unused references.
  • RemovedLazy loading admin components - remove admin component exports from lazy loading component exports.
  • RemovedProxy configuration cleanup - remove unused proxy settings and simplify proxy implementation.
  • AddedPost interaction persistence - add persistent post interaction states using localStorage.
  • AddedInteraction state synchronization - initialize likedPosts and savedPosts from backend data.
  • AddedReal-time interaction updates - sync interaction states when posts are loaded.
  • AddedChat message interface extensions - add customRoleName and badge fields to ChatMessage sender interface.
  • AddedRole and badge display support - support role and badge display in chat messages.
  • AddedCommunity member interface updates - add customRoleName, customPermissions, and badge fields.
  • AddedPermission hooks enhancement - support custom role information in permission hooks.

v0.3.7

💬 Chat System

User hiding, guest role, and chat improvements

  • AddedHiddenChatUser database model - add HiddenChatUser model for USER and COMMUNITY_OWNER level hiding.
  • AddedHide-user API endpoints - implement hide-user API endpoints (POST, DELETE, GET) with permission enforcement.
  • AddedFilter messages from hidden users - filter messages from hidden users while keeping system notifications visible.
  • AddedHide-user functionality in chat UI - add hide-user functionality with owner-level support in chat UI.
  • AddedSystem notifications integration - integrate hide-user functionality and system notifications.
  • AddedHiddenUsersTab component - create HiddenUsersTab component for managing hidden users in room settings.
  • AddedHidden users tab in room settings - add hidden users tab to room settings modal.
  • AddedUserRole tracking - track userRole in chat hooks and expose setMessages for system message auto-removal.
  • AddedGuest role and banning system - add guest role and banning system; enforce community chat access.
  • AddedGuest badges and CTAs - add guest badges, hide-sender, and approval CTAs in chat UI.
  • AddedText wrapping improvements - improve text wrapping with overflow-wrap and word-break for better mobile experience.
  • AddedCommunity chat settings enforcement - enforce community chat settings at query level for better performance.
  • AddedChat public access sync - sync chatPublicAccess with room isPublic status automatically.
  • AddedPublic chat access support - add public chat access support in rooms listing.
  • AddedGuest users blocking - guest users blocked from hiding messages.
  • AddedSystem notifications visibility - system notifications remain visible even when users are hidden.

👥 Community Management

Membership approval, invites, and access control

  • AddedCommunityMemberRequest model - add CommunityMemberRequest model for approval-required communities.
  • AddedMembership approval flow - implement membership approval flow and request management APIs.
  • AddedApproval-required state reflection - reflect approval-required state in APIs and feed logic.
  • AddedApproval-required joins UI - support approval-required joins and request management in UI.
  • AddedCommunityInvite model - add CommunityInvite model for private community token-based invites.
  • AddedCommunity invite link management - implement community invite link management with token validation.
  • AddedInvite token join API - add invite token join API endpoint with expiration and usage limits.
  • AddedInviteStatusModal component - create InviteStatusModal component for invite operation feedback.
  • AddedInvites tab in community settings - add invites tab to community settings for invite management.
  • AddedPrevent direct joins to private communities - prevent direct joins to private communities; require invite for access.
  • AddedCommunity visibility rules - implement community visibility rules for guests and members.
  • AddedMembership enforcement for comments - require community membership for comments and pools.
  • AddedBlock commenting for non-members - block commenting and pooling on community posts for non-members.
  • Added403 errors with clear messages - return appropriate 403 errors with clear messages.
  • AddedPrevent unauthorized access - prevent unauthorized access to private community data.
  • AddedSystem community visibility - maintain system community grade-based visibility.
  • AddedCreatorId exposure - expose creatorId in my-created communities response.
  • AddedPrivate community access - private community access now requires invite tokens.
  • AddedMembership approval permissions - membership approval flow enforces creator/moderator permissions.

📱 Mobile & Navigation

Subdomain routing, responsive improvements, and mobile UX

  • AddedMobile subdomain configuration - add mobile subdomain configuration option with environment variable.
  • AddedMobile subdomain redirect system - implement mobile subdomain redirect system with device detection.
  • AddedRedirect mobile users - redirect mobile users to app. subdomain when enabled.
  • AddedRedirect desktop users - redirect desktop users from app. subdomain to main domain.
  • AddedSkip mobile redirect cookie - support skip_mobile_redirect cookie to prevent loops.
  • AddedExclude API and extension routes - exclude API and extension routes from redirect logic.
  • AddedMobile redirect exclusions - mobile subdomain redirect excludes API and extension routes.

🎨 UI/UX Improvements

Settings refactor, responsive tabs, and layout improvements

  • AddedSettings UI refactoring - standardize color scheme with theme-aware classes in settings UI.
  • AddedReplace hardcoded colors - replace hardcoded color classes with muted-foreground and primary variants.
  • AddedResponsive tabs layout - improve responsive tabs layout with icon-only mode on smaller screens.
  • AddedResizeObserver for tabs - use ResizeObserver to detect tab overflow and hide labels.
  • AddedTab icons updates - update tab icons (UserCog for roles, UserPlus for invites).
  • AddedFeed layout standardization - standardize feed layouts with max-width containers.
  • AddedMax-width wrapper - add max-w-6xl mx-auto wrapper to all feed sections.
  • AddedMasonryGrid gap increase - increase MasonryGrid gap from 24 to 28px for better spacing.
  • AddedButton text wrapping - improve button text wrapping and min-height for better readability.
  • AddedWhitespace and hyphenation - enable normal whitespace and hyphenation; set min-h for sizes.
  • RemovedRemove community detail page - remove community detail page component (product decision).
  • AddedDisable community detail navigation - disable community detail page navigation in CommunityCard.
  • AddedCommunity page layout - add community page layout with SEO metadata for slug-based pages.
  • AddedDynamic SEO metadata - implement dynamic SEO metadata generation for communities.
  • AddedMetadata for public/private - handle metadata for both public and private communities.

🔒 Security & Validation

URL validation and development improvements

  • AddedURL validation enhancement - enhance URL validation for development environments with localhost whitelist.
  • AddedURL validation for development - URL validation enhanced for development environments.

🧰 API & Configuration

Route updates, i18n, and configuration improvements

  • AddedForce-dynamic export - add force-dynamic export to user preferences route for real-time updates.
  • AddedNext.js types import path correction - correct Next.js types import path from .next/dev/types to .next/types.
  • Addedrobots.txt production readiness - update robots.txt for production readiness.
  • AddedRe-enable normal post creation - re-enable normal post creation alongside AI features.
  • Addedi18n approval flow strings - add strings for approval flow, guest users, and chat UI (English/Turkish).
  • AddedCommunity invite messages - add community invite messages in English and Turkish.
  • AddedInvite status messages - include invite status messages: joined, expired, limit reached, restricted.
  • AddedAuthentication error messages - add authentication and validation error messages.
  • AddedDatabase query level enforcement - community chat settings enforced at database query level.

v0.3.6

📢 Advertising & Monetization

Google AdSense integration and ad components

  • AddedGoogleDisplayAd component - add GoogleDisplayAd, GoogleMultiplexAd and GoogleInFeedAd components.
  • AddedAds integration - integrate ads across feed, communities, coming-soon, privacy, terms, faq pages.
  • AddedAds components integration - ads components integrated consistently across main content pages.
  • AddedGoogle AdSense integration - add Google AdSense script to head; SW and CI tweaks.
  • Addedads.txt declaration - declare authorized seller for AdSense.
  • AddedAdSense script optimization - move AdSense script to top of head for better performance.
  • AddedAdSense script moved to top - faster ad loading performance.

📱 PWA & Service Workers

Service worker registration and installation prompts

  • AddedServiceWorkerRegister component - register service worker in layout; add ServiceWorkerRegister (production only).
  • AddedInstall prompt on root - show install prompt on root; remove suppression so non-installed users see card on every visit.
  • AddedPWA install prompt visibility - improved install prompt visibility on root.
  • AddedService worker registration - service worker registration gated to production.
  • AddedService worker cleanup - service worker cleanup and strategy refresh to align with recent PWA setup.

🛠️ Infrastructure & Routing

Proxy system, routing improvements, and middleware changes

  • AddedProxy routing system - add new proxy routing system to replace middleware.
  • RemovedRemove old middleware.ts - remove old middleware.ts in favor of proxy routing system.
  • AddedRoute-specific layout components - add route-specific layout components.
  • AddedLanding page layout component - add landing page layout component.
  • AddedGlobal not found page - add global not found page for Next.js 16.
  • AddedLegacy routes alignment - align legacy routes (/faq, /privacy, /terms, root) with localized/themed pages.
  • AddedMiddleware removal - middleware removed in favor of proxy routing (leaner path).

🔧 Development Tools

ESLint migration and configuration updates

  • AddedESLint 9 Flat Config migration - migrate to pure Flat Config for ESLint 9.
  • AddedFlat-compatible plugins - add flat-compatible plugins; scripts unchanged.
  • AddedLockfile updates - update lockfile after plugin installs.
  • AddedConfig adjustments - config adjustments and cleanup; remove .eslintignore.

🎨 UI/UX Improvements

Theme tokens, responsive design, and layout updates

  • AddedMain page feed improvements - improve main page feed and add community mode filtering.
  • RemovedRemove Discover page - remove Discover page and update navigation components.
  • RemovedRemove platform stats - remove platform stats feature from AI contents page.
  • AddedSections/footer token updates - update sections/footer to use system tokens; hide footer logo text.
  • AddedPrivacy and Terms token alignment - align Privacy and Terms pages with tokens; unify info/notice cards.
  • AddedFAQ page token alignment - align FAQ page with tokens; remove hard-coded grays.
  • AddedLogo dark-theme glow - add logo dark-theme glow; keep text optional.
  • AddedGlobal theme token updates - minor layout/style updates to respect theme tokens globally.
  • AddedThemed pages unification - themed pages unified with tokens (FAQ, Privacy, Terms).
  • AddedNavigation updates - navigation updated after Discover removal.

🔐 Authentication & Extension

Extension auth flow and callback improvements

  • AddedExtension sign-in flow - improve sign-in flow and fallback handling.
  • AddedAuth callback handling - fix auth callback handling and typings.
  • AddedClient-side auth callback - add client-side auth callback component.

🧰 API & Configuration

Type definitions, environment variables, and build config

  • AddedNext.js env type declarations - update Next.js env type declarations and compiler options/paths.
  • Addednext-env.d.ts updates - update next-env.d.ts and Next.js type definitions path to .next/dev/types.
  • AddedConfig adjustments - minor config adjustments; keep CSP and wasm flags intact.
  • AddedPackage metadata sync - package metadata sync.
  • AddedContact email unification - set contact to contact@owl-app.com across Docs/Legal/README/Trademarks/Security.
  • AddedReplace legacy mailto references - replace legacy mailto: references in content pages (coming-soon, faq, privacy, terms).
  • AddedOrganizationSchema contactPoint - use contact@owl-app.com in OrganizationSchema contactPoint.
  • Addedi18n contact email updates - i18n(en/tr): update support/contact emails in messages.
  • AddedOptional fetchStats - make fetchStats optional in usePostInteractions and add new translation keys.
  • Addedrobots.txt updates - allow major AI bots in robots.txt and add experimental llms.txt.
  • AddedNo CSP regressions - no CSP regressions; prior OCR allowances preserved.

🧹 Code Quality

Cleanup and documentation improvements

  • AddedREADME updates - CodeQL note, PDF.js cleanup guidance.
  • AddedCodeQL configuration - ignore minified/vendor; remove vendor pdf.worker; cache update.
  • AddedCodeQL configuration - ignore minified/vendor; reduced noise.

v0.3.5

📄 OCR & Document Processing

Tesseract.js integration and document upload improvements

  • AddedTesseract worker initialization - initialize tesseract worker with explicit paths for worker/core/lang.
  • AddedcreateWorker API - switch to createWorker API and ensure worker termination after recognize.
  • AddedWASM and CSP allowances - enable WASM and CSP allowances for tesseract.js in Next config.
  • AddedVendor core assets - vendor core assets added under public/tesseract-core/.
  • AddedDocument Uploader improvements - accept image/*, OCR preview dialog with adjustable font size, duplicate note prevention.
  • AddedOCR preview dialog - OCR preview dialog with adjustable font size.
  • AddedCSP extended - CSP extended to allow OCR worker scripts and hosts.
  • AddedWorker lifecycle - ensure Tesseract worker termination after recognize.

💬 Chat System

Sub-channels, permissions, and chat room management

  • AddedSub-channel creation rules - validate sub-channel creation rules and permissions in API (main chat only, role/setting checks).
  • AddedCreateChannelModal updates - disallow nested sub-channels; filter parent to main chats; context community/room.
  • AddedChatPanel sub-channel support - ChatPanel passes current community/room; allow members to create sub-channels in system communities.
  • AddedChatRoomList visual indent - visual indent for sub-channels with border/padding.
  • AddedCommunity setting - members can create sub-channels setting exposed and updatable.
  • AddedVisual indentation - visual indentation for chat sub-channels.
  • AddedSub-channel permission UX - add new messages for sub-channel permission UX and chat notices.
  • ChangedChat rooms API - sub-channel creation validation and permission rules.

📱 PWA & Mobile

Install prompts and pull-to-refresh functionality

  • AddedInstallPrompt component - add InstallPrompt and PullToRefresh to layout.
  • AddedPullToRefresh component - add PullToRefresh component to layout.
  • Addedinstall-prompt namespace - include install-prompt namespace in i18n aggregates.
  • AddedNew locale strings - new locale strings for install prompt (en/tr).
  • Addedi18n install-prompt texts - add install-prompt texts and related aggregates.

🎨 UI/UX Improvements

Mobile navigation, NSFW settings, and profile enhancements

  • AddedMobile Navigation shortcuts - add Settings shortcut and Chat panel toggle in user menu.
  • AddedNSFW view preferences - NSFW view preferences (autoUnblur, showWarnings) with i18n in Settings.
  • AddedNSFWBlurredImage improvements - allow allowUnblur flag, initialize warnings from user prefs.
  • AddedGender and age fields - add gender and age to profile types and forms.
  • AddedOnboarding wizard Gender & Age step - add Gender & Age step to onboarding wizard; persist to profile.
  • AddedMobile navigation quick access - quick access to Settings and Chat panel toggle.
  • AddedReaderDialog responsiveness - ReaderDialog responsiveness and explicit close on mobile.

🧰 API & Configuration

Profile API updates and community settings

  • AddedAPI profile route support - support gender/age in GET/PUT for profile API route.
  • AddeduseUserProfile gender/age - wire gender and age through initial state, load, and save in useUserProfile.
  • AddedCSP extension for OCR - extend CSP for tesseract scripts/workers in middleware.
  • AddedDELETE /api/study-notes endpoint - purge all study notes for the authenticated user.
  • ChangedCommunities settings API - chatMembersCanCreateSubChannels exposed in GET/PUT.
  • ChangedProfile API - support gender and age in GET/PUT.

v0.3.4

🗑️ Echo Removal

Complete removal of echo feature across the platform

  • RemovedEcho feature removal - complete removal of echo functionality across the platform.
  • RemovedRemoved echo API endpoints - /api/echoes, /api/posts/[id]/echoes, /api/users/[id]/echoes.
  • RemovedDeleted Echo components - EchoBanner, EchoButton, EchoIcon components removed.
  • RemovedRemoved echo translations - echo translations removed from EN/TR locales.
  • RemovedCleaned up echo references - echo references removed from all page components.
  • RemovedRemoved echo from PostCard - echo functionality removed from PostCard component.
  • RemovedRemoved echo from PostDetailModal - echo props removed from PostDetailModal component.
  • RemovedRemoved echo from ContentInteraction - echo interaction removed from ContentInteraction component.
  • RemovedEliminated echo from APIs - echo removed from all API routes and algorithms.
  • RemovedRemoved echo model - echo model removed from Prisma schema.
  • RemovedCleaned up echo notifications - echo notification type and handlers removed.
  • ChangedReplaced echo count - replaced echo count with sharesCount in trend detection.
  • ChangedRemoved ECHO interaction type - removed ECHO interaction type, added POOL type.
  • ChangedUpdated user interest vector - removed ECHO weight, adjusted COMMENT weight, added POOL.
  • AddedPrisma schema cleanup - Prisma schema cleanup after echo removal.

💬 Comments System

Enhanced comment functionality with likes and nested replies

  • AddedCommentCard component - new CommentCard component with like/unlike functionality.
  • AddedCommentDialog improvements - CommentCard integration, dynamic limits, reverse ordering.
  • AddedComment like/unlike API - POST /api/comments/[id]/like endpoint for comment likes.
  • AddedImproved comment pagination - better pagination and response structure.
  • AddedEnhanced comment detail API - comment detail API endpoint with better includes.
  • AddedNested reply support - recursive rendering for nested replies.
  • AddedOptimistic updates - optimistic updates for comment likes.
  • AddedBetter pagination - better pagination and error handling across comment APIs.

🔌 Extension & Authentication

Browser extension support and JWT authentication

  • AddedExtension authentication module - JWT token validation for browser extensions.
  • AddedExtension UI routes - /extension/auth-callback, /extension/signin routes added.
  • AddedExtension API endpoints - /api/extension/auth, /api/extension/validate endpoints.
  • AddedNextAuth redirect callback - NextAuth redirect callback for extension routes.
  • AddedMiddleware bypass - middleware bypass for extension routes to prevent i18n prefix.
  • Added7-day token expiry - 7-day token expiry for extension authentication.

🔌 Socket & Real-time

Real-time post interactions and socket.io integration

  • AddedSocket.io /posts namespace - Socket.io namespace for real-time post interactions.
  • AddedusePostSocket hook - new usePostSocket hook for managing socket connections.
  • AddedReal-time like updates - real-time like count updates for posts.
  • AddedReal-time comment updates - real-time comment count updates for posts.
  • AddedReal-time pool updates - real-time pool (save) count updates for posts.
  • AddedPost room join/leave - post room join/leave functionality for targeted updates.
  • AddedAutomatic cleanup - automatic cleanup on component unmount.

🎨 UI/UX Improvements

Post creator, feed refresh, and navigation enhancements

  • AddedPostCard UI optimization - removed echo clutter, improved content display.
  • AddedFixedBottomPostCreator improvements - Popover-based emoji picker, image upload button, better cursor management.
  • AddedChatInput simplification - simplified by removing emoji picker complexity.
  • AddedNavigation refresh feed - refresh feed functionality on home button when already on home page.
  • AddedMobile Navigation refresh - refresh feed functionality on mobile home button.
  • AddedFeedSection improvements - improved refresh UX, removed auto-refresh toggle.

🧰 API & Configuration

API improvements and algorithm updates

  • AddedisLikedByCurrentUser support - added isLikedByCurrentUser to feed APIs.
  • AddedisSavedByCurrentUser support - added isSavedByCurrentUser to feed APIs.
  • AddedOptimized likes API - improved likes API endpoint.
  • AddedOptimized pools API - improved pools API endpoint.
  • AddedImproved community detail API - enhanced community detail API endpoint.
  • AddedEnhanced AI content generation API - improved AI content generation API.
  • AddedBetter interaction weighting - better interaction weighting for content recommendations.
  • AddedUpdated dependencies - dependencies updated for extension and socket.io support.
  • AddedNext.js config updates - Next.js config updates for extension support.
  • AddedService worker updates - service worker updates for extension routes.

v0.3.3

👥 Community Management

Ownership rules, API improvements, and community cards

  • AddedCommunity ownership enforcement - community owners cannot leave their own community (403 ownerCannotLeave error).
  • AddedGET /api/communities improvements - switched to explicit select fields, smaller responses, added creatorId.
  • AddedCommunityCard owner management - owner sees Manage Community instead of Leave, locale-aware routing.
  • AddedInlineCommunitiesBrowser updates - uses CommunityCard, membership actions, owner-first sorting.
  • AddedCommunities widget on home - lists user communities, CTA to view all.
  • AddedCommunity cards enhancements - click sound, subtle animations, SEO-friendly slug routes.
  • ChangedDELETE /api/communities/[id]/join - blocks owner/creator from leaving, returns ownerCannotLeave (403).
  • ChangedGET /api/communities - explicit select, adds creatorId, trims payload.

📱 Mobile Navigation

Enhanced mobile menu and navigation improvements

  • AddedMobile Navigation improvements - better controls under More menu.
  • AddedFlip panels - Language, Theme and Font Size controls moved to More menu.
  • AddedNotifications link - added Notifications link to mobile More menu.
  • AddedMy Communities link - added My Communities to mobile More menu.
  • AddedLogout action - added Logout action to mobile More menu.
  • AddedLocale-aware active route detection - improved active route detection for mobile navigation.

📢 Advertising & SEO

Google AdSense integration and SEO improvements

  • AddedGoogle AdSense integration - add Google AdSense script to head; SW and CI tweaks.
  • Addedads.txt declaration - declare authorized seller for AdSense.
  • AddedAdSense script optimization - move AdSense script to top of head for better performance.
  • AddedAdSense script moved to top - faster ad loading performance.

📱 PWA & Service Workers

Workbox updates and service worker improvements

  • AddedPWA / Workbox updates - generated assets refreshed and ignored.
  • AddedRebuild public/sw.js - rebuilt with updated precache and routes.
  • AddedRefresh Workbox runtime bundle - refreshed public/workbox-7af0af7c.js.
  • AddedUpdate generated worker - updated public/swe-worker-*.js.
  • Added.gitignore updates - ignore Workbox/PWA artifacts.
  • AddedWorkbox bundles rebuilt - smaller SW surface and curated precache.

🌐 i18n Updates

Internationalization improvements for communities and navigation

  • AddedEnglish i18n updates - EN communities: ownerCannotLeave, manageCommunity, deleteCommunity.
  • AddedEnglish navigation i18n - EN navigation: logout, ensure fontSize and new destinations.
  • AddedTurkish i18n updates - TR communities: ownerCannotLeave, manageCommunity, deleteCommunity.
  • AddedTurkish navigation i18n - TR navigation: logout, fontSize, updated labels.

🧹 Code Quality

CodeQL configuration and documentation updates

  • AddedREADME updates - CodeQL note, PDF.js cleanup guidance.
  • AddedCodeQL configuration - ignore minified/vendor; remove vendor pdf.worker; cache update.
  • AddedCodeQL configuration - ignore minified/vendor; reduced noise.

v0.3.1

👥 Community Discovery

Community browsing, search, and discovery features

  • AddedAll Communities page - new discovery surface with search, subject filters, and infinite scrolling at app/[locale]/communities/all.
  • AddedMobile-friendly UX - enhanced empty/loading states and clarified status messages for communities discovery.
  • AddedInline Communities Browser - contextual communities exploration widget with search, subject filters, and infinite scrolling.
  • AddedTight integration - seamless integration with existing pages and layouts.
  • AddeduseCommunitiesJoined hook - custom hook to fetch and maintain the list of user's joined communities.
  • AddedReal-time reactive updates - live updates on membership changes.
  • AddedEnhanced empty/loading states - clarified status messages for communities discovery.
  • AddedConsistent spacing - touch targets across mobile/desktop for communities discovery.

🧰 API Improvements

Trend posts, community endpoints, and API enhancements

  • AddedTrending posts API endpoint - new endpoint at app/api/posts/trending with limit, offset, optional communityId, and multi-subject support.
  • AddedCommunities list endpoint enhancements - improved query, pagination, and filtering.
  • AddedCommunity posts endpoint - response structure and filter improvements.
  • AddedCommunity detail endpoint - minor refinements for stability and shape.

💬 Chat System

Community selection and chat room improvements

  • AddeduseChatRooms hook extension - optional communityId support and improved reload conditions.
  • AddedCommunitiesList component - component for community selection and status texts in chat.
  • Added3D flip transition - smooth transition between community/room views with state/responsiveness polish.
  • AddedSmall UI/flow fixes - improved consistency across screens.
  • AddedNavigation updates - desktop chat button disabled/pinned states, tooltip updates.

👥 Community Management

Community settings, deletion, and flow view toggle

  • AddedCommunities Settings Danger Zone - added Danger Zone with full delete flow (confirm, DELETE, redirect) in General tab.
  • AddedFeed View Toggle - trending vs. communities options, persisted with localStorage, i18n-aware.
  • Addedi18n-backed labels - feed view toggle with tooltips and preference persisted via localStorage for return sessions.

📱 PWA & Service Workers

Service worker cleanup and strategy updates

  • AddedService worker cleanup - service worker cleanup and strategy refresh to align with recent PWA setup.

🌐 i18n Updates

Internationalization for new features

  • Addedi18n keys - new keys for chat community/room listing, communities success/error, feed view labels, danger zone texts.
  • AddedEnglish translations - updated en message bundles with new keys.
  • AddedTurkish translations - updated tr message bundles with new keys.
  • AddedBilingual coverage - i18n parity across EN/TR for new features.

v0.3.0

📱 Progressive Web App

Full PWA support with offline functionality and installation

  • AddedProgressive Web App support - complete offline functionality with service workers.
  • AddedOffline functionality - complete offline access with service workers.
  • AddedInstallation support - users can install app on their devices.
  • AddedCache strategies - smart caching with Workbox runtime caching.
  • AddedManifest configuration - full PWA manifest with icons and metadata.
  • AddedAutomatic updates - service worker updates for seamless experience.
  • AddedNext-PWA integration - using @ducanh2912/next-pwa for Next.js 15 compatibility.
  • AddedWorkbox caching - image caching with CacheFirst strategy (30 days).
  • AddedRuntime caching - StaleWhileRevalidate for pages.
  • AddedService workers - automatic registration and update handling.

📱 Mobile Responsiveness

Comprehensive mobile optimization and responsive design

  • AddedViewport configuration - mobile-optimized viewport settings.
  • AddedMobile responsiveness overhaul - comprehensive mobile responsiveness across all major components.
  • AddedResponsive chat panel - fullscreen chat on mobile devices.
  • AddedAdaptive navigation - collapsible sidebar with mobile menu toggle.
  • AddedSmart padding - device-aware padding for main content.
  • AddedMobile detection - conditional rendering based on screen size.
  • AddedSafe area support - iOS notch and safe area insets.
  • AddedFullscreen mode - chat panel displays fullscreen on mobile.
  • AddedClose button - easy-to-access close button for mobile users.
  • AddedFixed positioning - proper z-index layering for mobile overlay.
  • AddedNo padding impact - doesn't affect main content layout on mobile.
  • AddedResponsive width - adapts to screen size dynamically.
  • AddedCollapsible sidebar - right navigation can collapse on desktop.
  • AddedMobile menu toggle - hamburger menu button on small screens.
  • AddedToggle visibility - hidden by default, togglable on mobile.
  • AddedContext tooltips - clear tooltip explanations for toggles.
  • AddedAdaptive sizing - responsive button sizing and spacing.
  • AddedDynamic padding - padding adjusts based on device and chat state.
  • AddedMobile-first spacing - optimized spacing for small screens.
  • AddedOverflow protection - prevents horizontal overflow on mobile.
  • AddedTouch optimization - disabled tap highlights and smooth scrolling.
  • AddedMobile navigation enhancements - enhanced mobile navigation bar with safe area padding.
  • AddedSafe area padding - iOS notch support with pb-safe utility.
  • AddedButton sizing - optimized button sizes for mobile touch.
  • AddedFont adjustments - better text sizing (text-[13px] leading-4).
  • AddedIcon spacing - improved icon and text spacing.
  • AddedBottom bar - fixed bottom position with proper z-index.
  • AddedCommunity selector mobile updates - removed max width on mobile devices.
  • AddedCreate button - mobile-friendly create community button.
  • AddedShortcut button - "My Communities" shortcut for mobile users.
  • AddedScroll container - responsive scroll with hidden scrollbars.
  • AddedDynamic width - adapts to available screen space.
  • AddedLanding page mobile optimization - responsive typography with text-4xl sm:text-5xl md:text-7xl sizing.
  • AddedHidden decorative elements - hide blobs on small screens.
  • AddedGrid responsiveness - grid adjustments for mobile (grid-cols-1).
  • AddedSpacing updates - optimized padding (py-16 sm:py-20).
  • AddedText balance - added text-balance for better readability.
  • FixedMobile navigation fixed - collapsible sidebar works correctly.
  • FixedChat panel mobile - properly displays fullscreen on mobile.
  • FixedSafe area support - iOS notch handled correctly.
  • FixedResponsive layouts - all components work on mobile.
  • FixedDisable on communities - chat toggle disabled where unnecessary.
  • FixedContext tooltips - clear explanations for chat state.
  • FixedMobile close button - easy chat dismissal on mobile.
  • FixedNo layout shift - main content unaffected by chat state.

🎨 Theme System

Glass theme removal and theme system simplification

  • RemovedGlass theme support removed - removed glass theme support for cleaner, more maintainable theme system.
  • Removedglass.css file removed - completely deleted.
  • Removedglass.css import removed from globals.css.
  • RemovedGlassSettingsPanel component removed.
  • RemovedGlass theme icons removed from theme toggle.
  • RemovedGlass theme logic removed from ThemeContext.
  • Added-1,200+ lines removed - eliminated unused glass theme code.
  • AddedSimpler architecture - reduced theme system complexity.
  • AddedBetter performance - less CSS to parse and bundle.
  • AddedEasier maintenance - fewer theme options to maintain.
  • AddedFocused design - emphasis on retro and dark themes only.
  • ChangedGlass theme removed - users with glass theme will be migrated to retro theme.
  • ChangedNo data loss - theme preferences preserved.
  • ChangedAutomatic migration - glass theme users redirected to retro theme.
  • FixedGlass theme removed - eliminated unused theme.

👤 User Profile & Navigation

Profile menu updates and navigation improvements

  • AddedUser profile menu - added "My Communities" link to dropdown.
  • AddedBuilding2 icon - new icon for communities navigation.
  • AddedQuick access - easy access to user's communities.
  • AddedTurkish label - "Topluluklarım" in user profile menu.

🎨 UI/UX Improvements

CSS enhancements and styling updates

  • AddedCSS enhancements - safe area insets with env() variables for iOS notch support.
  • AddedTap highlight - transparent tap highlight for better UX.
  • AddedOverscroll behavior - disabled overscroll bounce (none).
  • AddedReduced motion - respects prefers-reduced-motion preference.
  • AddedBorder color updates - better contrast for retro and root themes.
  • AddedTailwind configuration - automatic center alignment.
  • AddedResponsive padding - 1rem (default), 1rem (sm), 1.25rem (md), 1.5rem (lg).
  • AddedBreakpoint optimization - better responsive behavior.

v0.2.3

  • AddedPersonalized user identification with unique usernames.
  • AddedUsername validation with format and availability checking.
  • AddedUsername availability API with real-time availability checking.
  • AddedSEO-friendly profile URLs (/user/username) with username in URLs.
  • AddedConsistent username display across all components.
  • AddedUserProfileProps with username support.
  • AddedEnhanced useUserProfile with username lookup.
  • AddedAuthContext with username field integration.
  • AddedProfile editing with username management.
  • AddedUsername validation rules: Length 3-20 chars, Format letters/numbers/underscores only, Cannot start/end with underscore, Database-level uniqueness, Real-time API availability check.
  • AddedProduction-ready chat platform - complete chat system architecture with rooms, messages, and real-time features.
  • AddedChatPanel.tsx (456 lines) - Main chat interface.
  • AddedChatMessages.tsx - Message display and management.
  • AddedChatInput.tsx - Message composition interface.
  • AddedChatRoomList.tsx - Room selection and navigation.
  • AddedChatSettings.tsx - Chat preferences and configuration.
  • AddeduseChat.ts - Main chat state management.
  • AddeduseChatMessages.ts - Message operations and real-time updates.
  • AddeduseChatRooms.ts - Room management and switching.
  • AddeduseOnlineStatus.ts - User presence tracking.
  • AddedGET /api/chat/rooms - Fetch available chat rooms.
  • AddedPOST /api/chat/rooms - Create new chat rooms.
  • AddedGET /api/chat/rooms/[roomId]/messages - Get room messages.
  • AddedPOST /api/chat/rooms/[roomId]/messages - Send messages.
  • AddedGET /api/chat/rooms/[roomId]/members - Room member management.
  • AddedPOST /api/chat/join/[token] - Join rooms via invite links.
  • AddedPOST /api/chat/invite-link - Generate invite links.
  • AddedReal-time messaging - WebSocket-based communication.
  • AddedMessage delivery confirmation.
  • AddedTyping indicators.
  • AddedOnline/offline status.
  • AddedMessage timestamps.
  • AddedRoom management - Public and private rooms.
  • AddedRoom creation and configuration.
  • AddedMember invitation system.
  • AddedRoom settings and moderation.
  • AddedInvite link generation.
  • AddedText messages with formatting.
  • AddedMessage reactions and replies.
  • AddedMessage editing and deletion.
  • AddedFile and media attachments.
  • AddedSystem messages.
  • AddedResponsive design for mobile/desktop.
  • AddedMessage search and filtering.
  • AddedUnread message indicators.
  • AddedMessage history pagination.
  • AddedKeyboard shortcuts.
  • AddedSecurity and privacy - Message encryption in transit.
  • AddedUser authentication for rooms.
  • AddedSpam and abuse prevention.
  • AddedContent moderation tools.
  • AddedAdvanced PDF processing system - Text extraction from scanned PDFs with OCR support.
  • AddedpdfProcessorClient.ts - Main PDF processing orchestrator.
  • AddedpdfProcessorClientUnpdf.ts - UnPDF library integration.
  • Addedocr.ts - OCR text extraction from scanned PDFs.
  • AddedpdfCache.ts - Processing result caching.
  • AddedpdfOptimizer.ts - File size optimization.
  • AddedmarkdownConverter.ts - PDF to Markdown conversion.
  • AddeddocumentChunker.ts - Content chunking for AI processing.
  • AddeddocumentParser.ts - Document structure analysis.
  • AddednoiseFilter.ts - Content quality filtering.
  • AddedProcessing pipeline: File upload, format detection, text extraction, content processing, AI enhancement, study note creation.
  • AddedMulti-format support: Native PDF text extraction, scanned PDF OCR processing, multi-language OCR support, image-based PDF processing, mixed content documents.
  • AddedProcessing capabilities: Automatic content structuring, table and list preservation, mathematical formula recognition, image caption extraction, heading hierarchy detection.
  • AddedPerformance optimizations: Progressive processing with progress tracking, memory-efficient chunked processing, background processing for large files, result caching for repeated files, compression and optimization.
  • AddedStudy note integration: Automatic note creation from PDFs, AI-assisted content enhancement, topic and grade level detection, interactive study note editor, flashcard and question generation.
  • AddedPOST /api/study-notes - Create study notes from PDFs.
  • AddedGET /api/study-notes/[id]/generate - Generate content from notes.
  • AddedFile upload progress tracking.
  • AddedProcessing status monitoring.
  • AddedComprehensive country system - country-based content filtering and user localization.
  • AddedCountry selection with user country identification.
  • AddedCountry flags with visual country representation.
  • AddedLocalized content with country-aware content prioritization.
  • AddedRegional communities with location-based community discovery.
  • AddedLanguage detection with automatic language selection.
  • AddedFlagAvatar.tsx - Country flag display component.
  • AddedFlagIcon.tsx - Country flag icon component.
  • AddedCountrySelector.tsx - Country selection interface.
  • AddedUser profiles integration with country field in user data.
  • AddedContent filtering with country-based content recommendations.
  • AddedCommunity discovery with regional community recommendations.
  • AddedFeed algorithm with country preference scoring.
  • AddedNavigation updates - Chat buttons in desktop and mobile navigation.
  • AddedUsername display - Usernames in navigation and profiles.
  • AddedCountry flags - Visual country indicators.
  • AddedProfile enhancements - Username support.
  • AddedCountry display - Country information in profiles.
  • AddedProfile URLs - SEO-friendly username-based URLs.
  • AddedStudy notes sidebar - Custom study notes management.
  • AddedDocument uploader - Enhanced PDF upload interface.
  • AddedAI modal - Enhanced AI content creation flow.
  • AddedType system improvements - Restructured study note types.
  • AddedPDF processing types - Comprehensive PDF processing types.
  • AddedChat types - Complete chat system type definitions.
  • ChangedPerformance optimizations - Improved work environment initialization.
  • AddedConnection management - Duplicate connection prevention.
  • ChangedCanvas performance - Optimized grid rendering and interactions.
  • ChangedCode quality - More modularization.
  • ChangedHook optimization - Improved custom hook performance.
  • AddedError management - Improved error recovery.
  • FixedCritical fixes - Work environment loading race condition fixed (multiple work environment loads).
  • FixedDuplicate connections - Connection duplication prevented.
  • FixedPDF processing memory leaks - Large file processing issues fixed.
  • FixedComponent fixes - Chat message rendering (message display issues fixed).
  • FixedStudy notes creation - Improved note creation flow.
  • FixedProfile editing - Improved form validation.
  • FixedPerformance fixes - Canvas performance (optimized rendering for large work environments).
  • FixedMemory management - Better cleanup for PDF processing.
  • FixedAPI response times - Improved chat API performance.
  • AddedNew packages added - country-flag-icons for country flag SVG icons.
  • Addedreact-dropzone (existing but upgraded) for improved file uploads.
  • Addedtesseract.js for OCR processing of scanned PDFs.
  • ChangedEnhanced PDF.js integration for better PDF processing.
  • ChangedSocket.io updates for improved real-time chat.
  • ChangedNext.js optimizations for better performance.
  • ChangedDatabase schema changes - User.username: New required field (for existing users).
  • AddedUser.country: New optional field.
  • AddedPost.country: New optional field for content localization.

v0.2.2

  • AddedEcho Functionality - Share posts with optional commentary (Twitter-like retweet feature).
  • AddedQuote Echo - Add your thoughts when echoing content.
  • AddedEcho Feed - Dedicated feed for echoed content.
  • AddedEcho Analytics - Track echo counts and engagement.
  • AddedEchoButton.tsx - Interactive echo action button with animations.
  • AddedEchoBanner.tsx - Visual indicator for echoed posts.
  • AddedEchoPostCard.tsx - Display echoed content with original post.
  • AddedQuoteEchoDialog.tsx - Dialog for adding quote commentary.
  • AddedQuotedPostModal.tsx - Modal viewer for quoted content.
  • AddedEchoIcon.tsx - Custom echo icon component.
  • AddedPOST /api/echoes - Create new echo with optional comment.
  • AddedGET /api/echoes - Fetch user's echoed posts.
  • AddedGET /api/posts/[id]/echoes - Get echoes for specific post.
  • AddedGET /api/users/[id]/echoes - User-specific echo history.
  • AddedDELETE /api/echoes - Remove echo.
  • AddedOptimistic Updates - Instant UI feedback.
  • AddedAnimation Effects - Smooth echo button transitions.
  • AddedQuote Support - Add personal commentary to echoes.
  • AddedEcho Count - Real-time echo statistics.
  • AddedUser Attribution - Track who echoed what.
  • AddedEcho Feed - Dedicated page for echoed content.
  • AddedProduction-Ready AI-Powered Feed Algorithm - Intelligent content recommendation engine.
  • AddedfeedGenerator.ts - Main feed generation orchestrator.
  • AddedhybridScoring.ts - Multi-factor content scoring system.
  • AddeduserInterestVector.ts - User preference tracking.
  • AddedcollaborativeFiltering.ts - Similar user discovery.
  • AddedcountryAwareScoring.ts - Localized content prioritization.
  • AddedgradeLevelMatching.ts - Education level alignment.
  • AddedcommunityInfluence.ts - Community engagement scoring.
  • AddedtimeDecayScoring.ts - Freshness-based ranking.
  • AddedwilsonScore.ts - Statistical confidence scoring.
  • AddedqualityFilters.ts - Content quality validation.
  • AddeddriftDetection.ts - User interest drift monitoring.
  • AddedcoldStartHandler.ts - New user onboarding strategy.
  • AddeddiversityInjection.ts - Content variety balancing.
  • AddedfallbackStrategies.ts - Graceful degradation.
  • AddedstableVectorManager.ts - Interest vector persistence.
  • AddedstampedeProtection.ts - Cache stampede prevention.
  • AddedcacheManager.ts - Multi-layer caching strategy.
  • AddedinteractionTracker.ts - User behavior analytics.
  • Addedhelpers.ts - Utility functions and calculators.
  • AddedREADME.md - Comprehensive algorithm documentation.
  • AddedGET /api/feed - Personalized feed generation.
  • AddedGET /api/algorithm/health - System health monitoring.
  • AddedGET /api/algorithm/metrics - Performance metrics.
  • AddedGET /api/algorithm/stats - Algorithm statistics.
  • AddedGET /api/algorithm/drift-check - Interest drift detection.
  • AddedPOST /api/algorithm/grade-transition - Education level updates.
  • AddedPOST /api/cron/algorithm-maintenance - Scheduled maintenance.
  • AddedMulti-Factor Scoring System: Hybrid Score = (Base Relevance × 0.30) + (Collaborative Score × 0.20) + (Country Preference × 0.15) + (Grade Level Match × 0.15) + (Time Decay × 0.10) + (Quality Score × 0.10).
  • AddedUser Interest Vector: Subject preferences tracking, grade level alignment, interaction pattern analysis, dynamic weight adjustment, interest drift detection, stability scoring (0-1 scale).
  • AddedCollaborative Filtering: Similar user discovery, weighted similarity scoring, interest overlap calculation, recommendation propagation, cold start handling.
  • AddedCountry-Aware Content: Local content boost (+25%), regional language prioritization, country-specific relevance, fallback to global content, geographic diversity injection.
  • AddedQuality Filters: Minimum engagement threshold, content completeness check, spam detection, low-quality filtering, Wilson score confidence.
  • AddedDiversity Injection: Category distribution balancing, author variety enforcement, community representation, subject spread optimization, prevents filter bubbles.
  • AddedCache Strategy: L1: In-Memory (1 min TTL), L2: Redis (15 min TTL), L3: Database (Fallback), Stampede Protection.
  • AddedPerformance Optimizations: Feed generation: <200ms, Cache hit rate: >85%, Personalization depth: 50+ factors, real-time interest updates, graceful degradation.
  • AddedalgorithmHealthMonitor.ts - Health check system.
  • AddedalgorithmMonitoring.ts - Metrics collection.
  • AddedalgorithmJobs.ts - Background maintenance.
  • AddedDaily drift detection.
  • AddedWeekly interest recalculation.
  • AddedPerformance tracking dashboard.
  • AddedMassive Component Refactoring - Complete component restructuring: Before: 15 monolithic components (500-1,500 lines each), After: 60+ modular components (50-300 lines each).
  • AddedCode Reduction: ~6,000 lines removed through extraction.
  • AddedNew Components: 45+ extracted subcomponents.
  • AddedUserProfile.tsx (1,155 → 96 lines) - Extracted to 5 components: UserProfileHeader.tsx, UserProfileEdit.tsx, UserProfileStats.tsx, UserProfilePosts.tsx, BlockedUsersModal.tsx.
  • AddedFlashcardSystem.tsx (1,383 → 400 lines) - Extracted to 4 components: FlashcardDialogs.tsx, FlashcardList.tsx, FlashcardStats.tsx, FlashcardStudyMode.tsx.
  • AddedRichNoteEditor.tsx (1,481 → 300 lines) - Extracted to: EditorToolbar.tsx (569 lines), Markdown parsing utilities, Editor helper functions, OCR processing hooks.
  • AddedWorkspaceCard.tsx (846 → 400 lines) - Extracted to: WorkspaceCardHeader.tsx, WorkspaceCardAnchors.tsx, Platform-specific content renderers.
  • AddedSpotifyCard.tsx (876 → 200 lines) - Extracted to 5 components: SpotifyOverview.tsx, SpotifyProfile.tsx, SpotifyLibrary.tsx, SpotifySearch.tsx, SpotifyStats.tsx.
  • AddedPlatformContentCard.tsx (484 → 150 lines) - Extracted to: VideoContent.tsx, WebContent.tsx, usePlatformContentData.ts.
  • AddedRssFeedCard.tsx (435 → 200 lines) - Extracted to: RssFeedList.tsx.
  • AddedWebContentViewer.tsx (737 → 300 lines) - Extracted to 4 components: WebContentHeader.tsx, WebContentMetadata.tsx, WebContentRenderer.tsx, WebTypographySettings.tsx.
  • AddedImageLightbox.tsx (861 → 400 lines) - Extracted to: lightbox/subcomponents.tsx, lightbox/types.ts, lightbox/use-navigation.ts, lightbox/use-transform.ts.
  • AddedSidebar.tsx (505 → 200 lines) - Extracted to: sidebar/sidebar-context.tsx, sidebar/sidebar-menu.tsx.
  • Added22 New Custom Hooks (4,349+ lines) - Complete logic extraction from components to reusable hooks.
  • AddedWorkspace Hooks (8 Files): useWorkspaceStore.ts, useWorkspaceCards.ts, useWorkspaceConnections.ts, useWorkspaceFlashcards.ts, useWorkspaceRichNotes.ts, useWorkspaceTasks.ts, useWorkspacePomodoro.ts, useWorkspaceCardLock.ts.
  • AddedEditor & Content Hooks (6 Files): useRichNoteEditor.ts (345 lines), useFlashcards.ts (373 lines), useFlashcardMedia.ts, useMediaHandler.ts, useNoteExporter.ts, useNoteOrganization.ts.
  • AddedStudy & Learning Hooks (2 Files): useStudySession.ts (183 lines), useOCRProcessor.ts.
  • AddedIntegration Hooks (5 Files): useSpotifyAuth.ts (136 lines), useSpotifyData.ts (219 lines), useSpotifyLibrary.ts (219 lines), useSpotifySearch.ts (144 lines), useRssFeedLoader.ts (191 lines).
  • AddedUser & Notifications (2 Files): useUserProfile.ts (553 lines), useRealtimeNotifications.ts (279 lines).
  • AddedCSS Modularization - Separated global.css (1,085 lines) into modular system.
  • AddedNew Style Structure: base.css (94 lines), animations.css (178 lines), themes/root.css (155 lines), themes/glass.css (327 lines), themes/retro.css (267 lines), components/grid.css (60 lines).
  • AddedStyle Benefits: Faster Loading, Better Caching, Easy Maintenance, Theme Switching, Performance.
  • AddedTailwind Config Enhancements: Custom perspective utilities, extended color palette, glass effect utilities, animation presets, grid system helpers.
  • AddedProfile Management (NEW Components) - Complete profile editing and display system.
  • AddedEdit Mode - Inline profile editing.
  • AddedAvatar Upload - Image upload and cropping.
  • AddedBio Management - Rich text bio editor.
  • AddedPrivacy Settings - Profile visibility controls.
  • AddedBlock Management - User blocking system.
  • AddedStats Display - Engagement metrics.
  • AddedPost History - User's content feed.
  • AddedProfile header with edit capability.
  • AddedStatistics dashboard.
  • AddedBlock/unblock functionality.
  • AddedFollow/unfollow system.
  • AddedPost filtering and sorting.
  • AddedSmart User Onboarding - Guided first-time user experience.
  • AddedOnboardingCheck.tsx - Onboarding status checker.
  • AddedOnboardingModal.tsx - Multi-step onboarding wizard.
  • AddedOnboarding Steps: Welcome, Profile Setup, Interests, Preferences, Completion.
  • AddedFeatures: Progress Tracking, Skip Option, Data Validation, Auto-Detection, Grade Levels.
  • AddedRedis Integration (NEW) - Multi-layer caching system.
  • AddedRedis Modules (3 Files, 344+ lines): cache/redis.ts, cache/smartCacheManager.ts, cache/stampedeProtection.ts.
  • AddedCaching Strategy: Memory Cache (1 min), Redis Cache (15 min), Database (Fallback).
  • AddedFeatures: Automatic invalidation, stampede protection, smart prefetching, TTL management, cache warming.
  • AddedPerformance Metrics: Feed Generation: <200ms (cached), API Response Time: <100ms average, Cache Hit Rate: >85%, Database Queries: Reduced by 70%, Page Load Time: Improved by 40%.
  • AddedNew Tables: echoes, user_interest_vectors, similar_users, interactions, algorithm_metrics.
  • AddedMigration Scripts (3 Files): safe-migrate.js, test-algorithm-detailed.js, REDIS_SETUP.md.
  • AddedMigration Features: Auto-Detection, Data Loss Protection, Environment Aware, Dynamic Schema, Rollback Safety.
  • ChangedSchema Cleanup: Removed theme from users (moved to client-side IndexedDB), Removed fontSize from users (moved to client-side IndexedDB), Added country-aware content fields, Enhanced algorithm tracking.
  • FixedCodeQL Security Fixes (2 Critical) - Incomplete Hostname Regex (CVE-2025-XXXX) - Severity: MEDIUM.
  • FixedIssue: Incomplete YouTube URL validation.
  • FixedImpact: Potential URL spoofing attacks.
  • FixedBefore: /^https?:\/\/.*youtube\.com\/shorts\//i.
  • FixedAfter: /^https?:\/\/(www\.)?youtube\.com\/shorts\//i.
  • FixedProtection: Proper hostname validation, prevents bypass.
  • FixedFiles Fixed: src/lib/rss/feed.ts (2 instances).
  • AddedAuto-Refresh Feeds - All feed pages now auto-refresh.
  • AddedConfigurable refresh intervals.
  • AddedSmooth content updates.
  • AddedNo pagination disruption.
  • AddedPost Detail Modal (NEW) - Replaced dedicated post detail page.
  • AddedModal-based post viewing.
  • AddedFaster navigation.
  • AddedBetter mobile experience.
  • AddedPreserves scroll position.
  • AddedContent Interaction Enhancements - Optimistic like/unlike.
  • AddedOptimistic save/unsave.
  • AddedOptimistic echo/unecho.
  • AddedAnimation feedback.
  • AddedError recovery.
  • AddedSettings Page Overhaul - Grade level translations.
  • AddedOnboarding integration.
  • AddedBetter organization.
  • AddedVisual improvements.
  • AddedNew API Routes (10+ Files): /api/echoes, /api/feed, /api/algorithm/*, /api/cron/algorithm-maintenance.
  • AddedEnhanced Existing Routes: /api/posts, /api/comments, /api/likes, /api/notifications, /api/users/profile, /api/owl-search.
  • AddedAPI Features: Algorithm interaction recording, country-aware content filtering, grade level matching, real-time notifications, optimistic update support.
  • AddedNew Type Definitions (7 Files): connection.ts, flashcard.ts, richNoteEditor.ts, rssFeed.ts, userProfile.ts, workspace-card.types.ts, workspace.ts.
  • AddedNew Utilities (9 Files): editorHelpers.ts, markdownParser.ts, mediaHelpers.ts, rssMediaHelpers.ts, spacedRepetition.ts, userProfile.ts, workspaceAudio.ts, workspaceDatabase.ts, workspaceExport.ts.
  • AddedUpdated Translation Files - English (en.json): 100+ new keys - Echo system terminology, algorithm features, onboarding steps, profile management, study session terms.
  • AddedTurkish (tr.json): 100+ new keys - Türkçe echo terimleri, algoritma özellikleri, onboarding adımları, profil yönetimi, çalışma oturumu terimleri.
  • AddedAlgorithm Analytics (NEW) - AlgorithmAnalytics.tsx - 579 lines.
  • AddedFeatures: Algorithm health monitoring, user interest distribution, interaction patterns, performance metrics, drift detection reports, quality score analysis, cache hit rates, real-time statistics.
  • FixedCritical Fixes: Migration Provider Conflict - Fixed SQLite/PostgreSQL migration issues.
  • FixedData Loss Prevention - Added safe migration flags for schema changes.
  • FixedYouTube URL Security - Fixed incomplete hostname validation (2 instances).
  • FixedComponent Fixes: Fixed theme/fontSize persistence (moved to IndexedDB), Fixed post detail page navigation, Fixed notification real-time updates, Fixed workspace card state synchronization, Fixed Spotify integration edge cases.
  • FixedPerformance Fixes: Reduced global.css bundle size by 85%, Optimized component re-renders, Improved feed generation performance, Better cache utilization, Faster API responses.

v0.2.1

  • AddedAI Library Modules - Complete Gemini AI integration infrastructure with geminiClient.ts - Google Gemini API client with error handling.
  • AddeddocumentParser.ts - Multi-format document parsing (PDF, DOCX, TXT, MD).
  • AddeddocumentChunker.ts - Intelligent text chunking for large documents.
  • AddedcontentFormatter.ts - Content formatting and validation.
  • AddedpromptTemplates.ts - Optimized prompts for different content types.
  • AddedFlashcards - Auto-generated study flashcards with difficulty levels.
  • AddedQuestions - Practice questions with multiple choice and true/false.
  • AddedStudy Notes - Structured notes with key points and summaries.
  • AddedAIContentModal.tsx - Main AI generation interface.
  • AddedAIFlashcardViewer.tsx - Interactive flashcard display.
  • AddedAIQuestionViewer.tsx - Question practice interface.
  • AddedAINotesViewer.tsx - Formatted notes viewer.
  • AddedDocumentUploader.tsx - Multi-format file upload (PDF, DOCX, etc.).
  • AddedContentTypeSelector.tsx - Content type selection UI.
  • AddedAgeGroupSelector.tsx - Age-appropriate content generation.
  • AddedCardCountSelector.tsx - Customizable output quantity.
  • AddedOutputLanguageSelector.tsx - Multi-language support.
  • AddedWorkspaceAddButton.tsx - Direct workspace integration.
  • AddedPOST /api/ai/generate - Content generation with streaming support.
  • AddedPOST /api/ai/parse-document - Document parsing endpoint.
  • AddedEnhanced POST /api/posts - AI metadata support.
  • AddedAI-generated badge indicator.
  • AddedExpandable/collapsible content view.
  • AddedDirect workspace integration.
  • AddedSource document tracking.
  • AddedAge group metadata.
  • AddedaiGenerated - Boolean flag for AI content.
  • AddedaiContentType - Type identifier (flashcards/questions/notes).
  • AddedaiGeneratedContent - JSON storage for structured content.
  • AddedaiSourceDocument - Original document reference.
  • AddedaiAgeGroup - Target age group metadata.
  • FixedCritical XSS Vulnerability Fix (CodeQL #24) - Security Level: CRITICAL.
  • FixedIssue: Incomplete multi-character sanitization vulnerability.
  • FixedImpact: Potential XSS attacks via nested HTML tags.
  • FixedFix: Implemented sanitize-html library for robust sanitization.
  • FixedBefore: /<[^>]*>/g regex (bypassable).
  • FixedAfter: Industry-standard sanitize-html with zero-tolerance policy.
  • FixedProtection: OWASP Top 10 compliance (CWE-20, CWE-80, CWE-116).
  • AddedMiddleware Protection: Direct /sounds/ access blocked (403 Forbidden).
  • AddedAPI Route: Secure serving via /api/sounds/[filename].
  • AddedUser-Agent Validation: Blocks curl/wget direct downloads.
  • AddedCache Control: 24-hour caching with proper headers.
  • AddedWhitelist: Only approved system sounds accessible.
  • Addedglass-light - Light mode glassmorphism with subtle blur.
  • Addedglass-dark - Dark mode glassmorphism with enhanced contrast.
  • AddedSeparate theme configurations for better visual consistency.
  • ChangedUpdated ThemeContext with glass variant support.
  • AddedNew icon: Wine glass (replacing GlassWater).
  • AddedGlassSettingsPanel Component (NEW) - Centralized theme customization interface.
  • AddedReal-time preview of theme changes.
  • AddedGlass intensity controls.
  • AddedBlur effect adjustments.
  • AddedIntegrated into Navigation bar.
  • ChangedRemoved: Excessive glassmorphism from Card component.
  • ChangedRemoved: Glassmorphism from ImageLightbox for better readability.
  • ChangedResult: Cleaner, more focused design with better performance.
  • ChangedAll sound files migrated from direct /sounds/ to secure /api/sounds/ route (13 Files Updated).
  • ChangedUpdated Components: LoginButton.tsx, ContentInteraction.tsx, NotificationDropdown.tsx, PomodoroTimer.tsx, WorkspaceCard.tsx, useWorkspaceStore.ts.
  • AddedSecurity Benefits: Prevents direct file access and hotlinking, user-agent validation, rate limiting capability, audit trail for sound requests, consistent caching strategy.
  • AddedAllowed Sounds: button-click.mp3, card-add.mp3 / card-delete.mp3, comment-button.mp3 / like-button.mp3, connection-add.mp3 / connection-remove.mp3, lock.mp3 / unlock.mp3, notification-received.mp3, pomodoro-start.mp3 / pomodoro-complete.mp3, pool-vote.mp3.
  • AddedOptimistic Updates & Animations - Instant UI feedback before server response.
  • AddedSmooth scale and rotate animations on like/save.
  • AddedLocal state management with server sync.
  • AddedAnimation timing: 300ms with easing.
  • AddedReduced perceived latency significantly.
  • AddedShow More/Less - Expandable content for long posts.
  • AddedActivity Tracking - View duration tracking (3+ seconds).
  • AddedIntersection Observer - Automatic view counting.
  • AddedImage Error Handling - Graceful fallback for broken images.
  • AddedComment Count Updates - Real-time comment synchronization.
  • ChangedPrefetch Disabled - Navigation and MobileNavigation (faster page loads).
  • AddedOptimized Images - onError callback support.
  • AddedPerspective Utility - Tailwind 3D transformation support (1000px).
  • AddedComplete markdown-to-BlockNote conversion with Markdown Parser (167+ lines).
  • AddedHeadings: #, ##, ### support.
  • AddedLists: Bullet (-, *) and numbered (1., 2.).
  • AddedInline Styles: Bold (**text**), italic (*text*), code (`code`).
  • AddedLinks: Markdown link syntax ([text](url)).
  • AddedCode Blocks: Fenced code with language support.
  • AddedBlockquotes: Quote formatting.
  • AddedParse AI-generated markdown notes.
  • AddedConvert to BlockNote blocks automatically.
  • AddedPreserve formatting and structure.
  • AddedError recovery for malformed content.
  • ChangedTiptap config optimization.
  • ChangedConsole warning suppression.
  • ChangedBetter error handling.
  • AddedContent validation.
  • ChangedMajor database schema update: Migrated from user-based to content-based country detection.
  • AddedRSS feed country association.
  • AddedPost metadata country tracking.
  • AddedImproved content localization.
  • AddedBetter regional content filtering.
  • AddedPrisma Updates - AI content fields schema.
  • AddedMigration files for production deployment.
  • AddedDatabase index optimizations.
  • AddedImproved query performance.
  • ChangedIndexedDB Migration - User preferences moved to IndexedDB.
  • AddedOffline-first architecture.
  • AddedBetter sync with server.
  • AddedData migration utilities.
  • AddedEnglish (en.json): showMore / showLess - Content expansion controls, Discover section enhancements, Search functionality labels, AI-related terminology.
  • AddedTurkish (tr.json): showMore: 'Daha Fazla Göster', showLess: 'Daha Az Göster', AI terminology translations, Enhanced discover section.
  • ChangedNext.js 15 Compatibility - Async params support in API routes.
  • ChangedPackage Dependencies - Updated lowlight and other dependencies.
  • ChangedType Safety - Improved TypeScript definitions.
  • AddedBuild Time - ~18.6s compilation time.
  • Added55 Routes - All routes successfully compiled.
  • Addedcleanup-invalid-images.js - Database image reference cleanup.
  • AddedEnhanced Prisma generation scripts.
  • AddedDatabase migration utilities.
  • AddedError handling for stack trace generation with debug improvements.
  • AddedBetter logging in debug logger.
  • AddedConditional logging (dev-only admin access logs).
  • AddedImproved error messages.
  • AddedSecurity Enhancements - Direct sound file access blocked (403 Forbidden).
  • AddedEnhanced request validation.
  • AddedBetter user-agent filtering.
  • AddedImproved error responses.
  • ChangedPerformance - Removed excessive console logging.
  • AddedConditional debug logging (dev-only).
  • AddedOptimized request handling.
  • AddedBetter response caching.
  • AddedNew Documentation Files (3156+ lines): OWL-App-2025-Trend-Analysis-Report.md, owl-app-2025-trend-analysis.md, granite-docling-scenarios.md.
  • FixedXSS Vulnerability (CodeQL #24) - Sanitization bypass prevention.
  • FixedNext.js 15 Async Params - API route compatibility.
  • FixedPackage Lock Sync - Dependency version conflicts.
  • FixedImage icon conflict in FlashcardSystem (Image → ImageIcon).
  • FixedTheme and fontSize fields removed from auth query.
  • FixedStack trace error handling in debug logger.
  • FixedSound path migrations across 13 components.
  • AddedNew Packages: sanitize-html - HTML sanitization (security).
  • Added@types/sanitize-html - TypeScript types.
  • AddedAI-related dependencies for Gemini integration.
  • ChangedUpdated Packages: lowlight - Syntax highlighting.
  • ChangedVarious package version alignments.
  • ChangedNext.js 15 compatibility updates.

v0.2.0

  • ChangedFirebase Client SDK and Firebase Admin SDK removed - Migration to Google OAuth.
  • ChangedMigration to NextAuth.js + Prisma database completed.
  • Changed~200KB bundle size reduction, faster server startup, better CSRF protection.
  • ChangedAll users automatically migrated, JWT-based sessions, no data loss.
  • AddedExtended session data with complete user profile (role, school, grade, theme, fontSize, etc.).
  • ChangedEliminated redundant database calls in API routes.
  • AddedAuto-create user on first login with default STUDENT role.
  • ChangedSession-based user data for performance optimization.
  • AddedGraceful error handling and fallback mechanisms.
  • AddedNow Playing Widget: Real-time playback display with controls.
  • AddedTop Artists Gallery: Time-range selection (4 weeks, 6 months, all-time).
  • AddedTop Tracks Chart: Ranked list with popularity metrics.
  • AddedRecently Played Timeline: Chronological history (last 50 tracks).
  • AddedPlaylist Management: View, search, and manage playlists.
  • AddedLibrary Integration: Saved tracks, albums, followed artists.
  • AddedSearch: Multi-type search (tracks, albums, artists, playlists).
  • AddedStatistics: Listening analytics and insights.
  • AddedZustand Store: 295+ lines of centralized state management.
  • AddedIndexedDB Persistence: Auto-save, offline support, data migration.
  • Added9 Card Types Supported: Platform Content, Rich Note, Calendar, Pomodoro, Task Board, Flashcards, RSS Feed, Owl Search, Spotify.
  • AddedWorkspaceCard: Connection system (4-sided anchors), resize polish (200+ lines).
  • AddedPomodoroTimer: Statistics dashboard, session tracking (301+ lines).
  • AddedConnectionsOverlay: Visual connection lines between cards.
  • AddedVirtualizedCardRenderer: Performance optimization for 100+ cards.
  • AddedMiniMap: Workspace navigation with viewport indicator (NEW).
  • AddedPlatformContentCard: Better error handling and refresh.
  • AddedComplete drag-and-drop workspace (121+ lines).
  • AddedAdd new cards menu.
  • AddedConnection mode toggle.
  • AddedWorkspace templates.
  • AddedExport/import functionality.
  • AddedFull-screen mode.
  • AddedBilateral Block System: Prevent all interactions.
  • AddedBlock Status Check: Fast bilateral detection (NEW).
  • AddedMutes System: Softer alternative to blocks (NEW).
  • AddedFeatures: Cascade delete, audit trail, can't block yourself.
  • AddedComment Threading: Reply support with depth limits.
  • AddedPagination: Cursor-based for efficiency.
  • AddedCRUD Operations: Individual comment endpoints (NEW).
  • AddedFeatures: Edit history, like/unlike, notifications.
  • AddedEnhanced Queries: Multi-criteria filtering, search.
  • AddedMember Management: Roles (member/moderator/admin).
  • AddedJoin/Leave: Approval system for private communities.
  • AddedCommunity Posts: Separate post management.
  • AddedFollow System: Mutual follow detection.
  • AddedLikes: Batch operations, optimistic updates.
  • AddedMutes: Temporary or permanent, keyword support (NEW).
  • AddedPool Categories: Subject-based organization (NEW).
  • AddedPool Management: CRUD operations, bulk actions.
  • AddedFeatures: Privacy settings, color/icon selection.
  • Added418+ lines changed - Complete rewrite with Posts API (MAJOR OVERHAUL).
  • AddedRich Media: Images, videos, audio, PDF support.
  • AddedContent Processing: XSS protection, Markdown conversion, @mentions, hashtags.
  • AddedPrivacy Levels: Public, followers, private, community-only, drafts.
  • AddedDiscovery: Trending algorithm, most-read ranking.
  • AddedPerformance: Cursor pagination, query optimization.
  • AddedSearch & Filters: Name, email, school, role, grade.
  • AddedExtended Profile: 99+ lines of profile enhancements.
  • AddedProfile Statistics: Posts, comments, likes, followers.
  • AddedFollowers/Following Lists: Mutual detection, pagination.
  • AddedUser Posts Endpoint: Privacy-filtered post listing.
  • AddedUser Comments/Likes History: New endpoints (NEW).
  • AddedContent Scraping: YouTube, Vimeo, web articles (152+ lines).
  • AddedDocument Processing: PDF, Word, PowerPoint extraction.
  • AddedRSS Integration: Feed parsing and caching.
  • AddedRecommendations: Collaborative + content-based filtering.
  • Added342+ lines added to globals.css.
  • AddedDark Mode: Comprehensive support.
  • AddedRetro Theme: Synthwave aesthetics with neon colors.
  • AddedAnimations: GPU-accelerated, smooth transitions.
  • AddedCustom Scrollbars: Styled for all themes.
  • AddedThemeContext Enhancement: 51+ lines added.
  • AddedThemes: Light, Dark, Retro (synthwave).
  • AddedPersistence: localStorage + cross-tab sync.
  • AddedKeyboard Shortcut: Ctrl+Shift+T.
  • ChangedLoginButton: Google OAuth only, Firebase UI removed.
  • AddedUserProfile: Extended fields, theme preference.
  • AddedAgeVerification: Better UX, COPPA compliance.
  • AddedPostCard: Rich media support, improved interactions (54+ lines).
  • AddedContentInteraction: Sound effects integration (94+ lines).
  • AddedCommentDialog: Threading support.
  • AddedOther: ContentPreview, PostCreationForm, DiscoverNotes, MostReadNotes.
  • AddedLogo: New branding assets.
  • AddedCard: Theme-aware styling.
  • AddedImage Lightbox: Zoom and pan controls.
  • AddedTheme Toggle: Retro theme support.
  • AddedPoolManagement: Category support (32+ lines).
  • AddedSavedPosts: Better organization (108+ lines).
  • AddedPoolItemActions: Sound feedback.
  • Added241+ lines added - Complete redesign with User Profile Overhaul.
  • AddedTabbed Interface: Posts / Comments / Likes tabs.
  • AddedActivity Statistics: Total posts, comments, likes received.
  • AddedFollow/Unfollow: Integrated button.
  • AddedBlock/Report: Moderation options.
  • AddedNotificationDropdown: Sound effects (24+ lines).
  • AddedUserControls: Block/mute with sound feedback.
  • AddedNavigation: Work environment link added.
  • AddedMobileNavigation: Enhanced mobile nav.
  • Added13 Sound Files Added (NEW) with Sound Effects System.
  • AddedInteraction Sounds: button-click.mp3, like-button.mp3, comment-button.mp3, pool-vote.mp3.
  • AddedWork Environment: card-add.mp3, card-delete.mp3, connection-add.mp3, connection-remove.mp3.
  • AddedModeration: lock.mp3, unlock.mp3.
  • AddedNotifications: notification-received.mp3.
  • AddedPomodoro: pomodoro-start.mp3, pomodoro-complete.mp3.
  • AddedAll sounds <50KB, <1s duration.
  • AddedVolume normalized, high quality.
  • AddedPreloaded for instant playback.
  • AddedUser settings: enable/disable, volume control.
  • AddedHome: Personalized feed algorithm (50+ lines).
  • AddedDiscover: Enhanced discovery with trending (84+ lines).
  • AddedFollowing: Activity feed with filters (20+ lines).
  • AddedCommunities: Better discovery (18+ lines).
  • AddedAdmin Dashboard: User management, content moderation queue (34+ lines).
  • AddedModeration Page: Report queue, quick actions (24+ lines).
  • AddedSaved Page: Pool organization (10+ lines).
  • AddedSettings: New preferences, theme customization (12+ lines).
  • Added/profile/[userId] - Dynamic user profile view (NEW).
  • Added/profile/comments - User comments tab (NEW).
  • Added/profile/likes - User likes history (NEW).
  • Addedclient-providers.tsx - Provider wrapper (NEW).
  • AddedLocale Layout: Provider hierarchy (102+ lines).
  • AddedRoot Layout: Metadata and SEO updates (9+ lines).
  • AddedComing Soon: Better design and features.
  • AddedEnglish Translations: 30+ new keys for features.
  • AddedTurkish Translations: 22+ new keys (Çalışma Ortamı, Spotify, vb.).
  • AddedMiddleware: Locale detection, URL routing, cookie persistence.
  • AddedLanguages: Turkish (default), English.
  • AddedFeatures: Browser detection, SSR support, type-safe translations.
  • ChangedRemoved Unused Packages: glasscn-ui, playwright, firebase, firebase-admin - Total: 26 packages removed, ~100MB saved.
  • AddedAdded Dependencies: express (^4.21.2) + @types/express for production server.
  • Added.gitignore Updates: CRITICAL: client_secret_*.json - Prevent OAuth secret leaks.
  • AddedDatabase: prisma/*.db, prisma/db/*.db, prisma/prisma/*.db.
  • AddedTest Results: test-results/ directory.
  • AddedCompliance: SOC2, GDPR ready.
  • AddedEnvironment Variables: SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, SPOTIFY_REDIRECT_URI added.
  • ChangedEnvironment Variables: FIREBASE_* variables removed (deprecated).
  • AddedDocumentation: Inline comments, environment-specific examples.
  • ChangedUpdated: favicon.ico (15KB, optimized from 42KB).
  • ChangedUpdated: favicon.png, logo.png, logo.svg (high-res, new design).
  • AddedNEW: favicon.svg (modern browsers).
  • AddedNEW: owl-like-icon.png (custom like icon).
  • Added141+ utility functions added with utils.ts Enhancements.
  • AddedClass name utilities, date formatters, string helpers.
  • AddedNumber formatters, URL utilities, array/object helpers.
  • AddedValidation functions, color utilities, storage helpers.
  • AddedDebounce/throttle, type guards.
  • Addednotifications.ts: Real-time delivery, push notifications, email queuing.
  • AddedimageOptimizer.ts: Automatic resizing, format conversion, Sharp integration.
  • AddedapiDebug.ts: Request logging, performance monitoring.
  • AddeduseDragDrop: Better state management, mobile touch support (10+ lines).
  • AddeduseBlockCheck: Block status checking with cache (NEW).
  • AddedNew Tables: spotifyTokens, mutedUsers, workspaceCards, cardConnections.
  • AddedExtended Models: User (theme, fontSize), Post (privacy levels), poolCategories.
  • ChangedRemoved: Old duplicate databases (custom.db, dev.db).
  • ChangedSize: 716KB (cleaned from 819KB).
  • AddedMigration Scripts: migrate-api-routes.js - API migration helper (NEW).
  • AddedImage Optimization: Spotify CDN domain (i.scdn.co).
  • AddedExperimental Features: serverActions, optimizePackageImports.
  • AddedBundle Optimization: Tree shaking, code splitting.
  • AddedREADME: Advanced media support, work environment features, Spotify guide.
  • AddedArchitecture: Technology stack updates, installation instructions.

v0.1.9

  • AddedWeighted heuristics for article detection (length/paragraphs/headings/sentences).
  • AddedStructured content output (heading/paragraph/list/quote/image).
  • AddedPlain-text generation without image placeholders.
  • AddedFrequency-based (TextRank-like) sentence scoring.
  • AddedNoise cleanup (Image placeholders, sponsored/read more/related, etc.).
  • AddedMinimum-length support (defaults to 500 chars) with auto sentence-count ramp-up.
  • Changed/api/web-content switched to local extractor + summarizer.
  • AddedPreserves structuredContent for the viewer.
  • AddedFilters non-content images: logos/icons/banners/ads/social/pinterest/pinimg/kaydet/tracking/analytics/avatar/badge.
  • AddedIgnores .svg, .gif, /animation paths and small data URLs.
  • AddedDrops tiny/odd-ratio images via size and aspect heuristics.
  • AddedNew AISummary component with toggle in WebContentViewer.
  • AddedDefault min length 500 chars; toggle in settings menu.
  • AddedElastic spring-based quadratic paths (rubber-like).
  • AddedLive DOM rects for precise endpoints.
  • AddedStable on pan/zoom; rAF only while dragging/linking.
  • AddedOwlSearchCard component.
  • Added/api/owl-search endpoint scaffold.
  • AddedOAuth2 login via NextAuth.js Spotify provider.
  • AddedUser profile & playlists browsing.
  • AddedIn-app Spotify search (tracks/albums/artists/playlists).
  • AddedEmbedded player cards created from selections.
  • AddedAuto-resizing embed players (100% width/height).
  • AddedGroup locking with lockedGroups state management.
  • AddedSmooth tween animations (120ms ease-out) for locked card movements.
  • AddedVisual feedback: pulse ring animation on lock/unlock.
  • AddedAudio feedback: lock/unlock sound effects via public/sounds/.
  • AddedCustom events for animation coordination.
  • AddedLock/unlock sound effects moved to public/sounds/.
  • Addedlock.mp3 and unlock.mp3 audio files.
  • AddedIntegrated into WorkspaceCard lock button interactions.
  • AddedEnv-aware Prisma generate script scripts/prisma-generate.js.
  • AddedLocal: generate with native engines.
  • AddedVercel/Prod: --no-engine.
  • Changed.gitignore: ignore release/ directory.
  • Changed@mdxeditor/editor: 3.46.0 → 3.46.1 updated.
  • Changed@playwright/test: 1.55.0 → 1.55.1 updated.
  • Changed@react-pdf/renderer: 4.3.0 → 4.3.1 updated.
  • Changed@reactuses/core: 6.0.6 → 6.1.0 updated.
  • Changed@tanstack/react-query: 5.90.1 → 5.90.2 updated.
  • Changedeslint-config-next: 15.5.3 → 15.5.4 updated.
  • Changedframer-motion: 12.23.16 → 12.23.21 updated.
  • Changednext: 15.5.3 → 15.5.4 updated.
  • Changedtw-animate-css: 1.3.8 → 1.4.0 updated.
  • Changedwavesurfer.js: 7.10.1 → 7.10.3 updated.

v0.1.8

  • AddedInteractive demo component designed with 80s aesthetic.
  • AddedColor palette, interactive elements, and gradient effects.
  • AddedShowcase of retro shadows, borders, and visual effects.
  • AddedDemo instructions for theme switching in settings.
  • AddedResponsive grid layout for demo cards.
  • AddedExtended theme types: Added 'retro-light' and 'retro-dark' theme types.
  • AddedSeparate custom retro theme management from next-themes.
  • AddedLocalStorage persistence for retro themes.
  • AddedTheme bridge creation for retro theme management.
  • AddedDocument class management for retro themes.
  • Addedretro-light and retro-dark color schemes.
  • AddedRetro shadow system in xs, sm, md, lg, xl sizes.
  • AddedRetro-themed button, card, and input styles.
  • AddedRetro theme support for BlockNote editor.
  • AddedRetro gradient effects and text styling.
  • AddedRetro border and pixel effects.
  • AddedAdded retro-light and retro-dark options to settings page.
  • AddedTheme selector with proper labels.
  • AddedTheme preview and switching implementation.
  • AddedUI updates to accommodate retro theme selection.
  • AddedFirefox Reading Mode similar content extraction.
  • AddedMozilla Readability integration for article parsing.
  • AddedSpecific content selectors for Turkish websites.
  • AddedFallback content cleaning methods.
  • AddedRemoval of unwanted elements like ads, navigation, etc.
  • AddedRSS content cleaning with HTML and text output.
  • AddedLink density analysis and spam detection.
  • AddedUse of contentCleaner for RSS content processing.
  • AddedcleanRssContent function calls for HTML/text extraction.
  • AddedEnhanced content parsing for RSS feeds.
  • AddedContent quality improvement by removing unwanted elements.
  • AddedAdded Evrim Ağacı, Bilim ve Gelecek, Popular Science TR, TÜBİTAK Bilim Genç Turkish science providers.
  • AddedAcademia & Announcements (TR): Added TÜBİTAK, YÖK, TÜBA, TÜSEB, Türkiye Ulusal Ajansı (Erasmus+).
  • AddedTurkish News: Added BBC Türkçe, NTV, CNN Türk, Anadolu Ajansı, DW Türkçe.
  • AddedExisting international providers: Kept BBC, The Verge, TechCrunch and more.
  • AddedComprehensive loading message types (connecting, processing, etc.).
  • AddedInterval-based message cycling implementation.
  • AddedInternationalization support with next-intl.
  • AddedCustomizable message keys and intervals.
  • AddedLoading state management with React hooks.
  • AddedTypeScript types for loading message keys.
  • Added30+ loading message translations.
  • AddedSpecific messages for connecting, processing, analyzing.
  • AddedContent loading messages (feed, profile, settings).
  • AddedUpload/download status messages.
  • AddedAuthentication and validation messages.
  • AddedTranslation of all English loading messages to Turkish.
  • AddedConsistent terminology across languages.
  • AddedTurkish-specific loading message phrasing for user experience.
  • AddedProper Turkish localization.
  • Addedpost_images table with optimized image storage.
  • AddedSmall, medium, large multiple image size variants.
  • AddedResponsive image JSON storage implementation.
  • AddedImage metadata fields (dimensions, mime type, etc.).
  • AddedUnique index on postId for image relationships.
  • AddedRetro theme configuration to user preferences.
  • Addedpost_images model with image optimization fields.
  • AddedSchema relationship updates for enhanced content management.
  • AddedNew fields for retro theme settings.
  • ChangedVersion update from 0.1.x to 0.1.8.
  • AddedNew dependencies for enhanced functionality.
  • ChangedUpdate existing packages to latest versions.
  • ChangedSecurity updates and performance improvements.
  • AddedDevelopment dependencies for better tooling.
  • AddedTheme switching logic to handle retro themes.
  • AddedVisual feedback for theme changes.
  • AddedAccessibility improvements for theme selection.
  • AddedRetro theme styling variants.
  • AddedTheme-aware logo rendering.
  • AddedLogo colors and effects update for retro aesthetic.
  • AddedLogo visibility across all themes.
  • AddedRetro theme styles and effects.
  • ChangedImproved content display for RSS feeds.
  • AddedContent cleaning integration for better readability.
  • ChangedCard layout updates for enhanced user experience.
  • AddedContentCleaner integration for RSS content processing.
  • AddedClean content display with HTML/text options.
  • ChangedImproved RSS feed parsing.
  • AddedError handling for content cleaning failures.
  • AddedDual-pane editing with merge-right-to-left utility.
  • AddedDebounced autosave with image blob → data URL persistence.
  • Addedtesseract.js with language selection (TR/EN) OCR support.
  • AddedCreate media cards (YouTube/Spotify/direct/file) connected to notes.
  • AddedSimple TXT/Markdown export helpers.
  • AddedPrevent canvas pan conflicts while editing.
  • AddedSpotify Web API integration: Playlist, album, and artist tracks as RSS feed items.
  • AddedIndividual tracks with album artwork, artist info, and playable embeds.
  • AddedSequential numbering for playlist tracks.
  • AddedMulti-format support for Spotify URLs, embed codes, and direct IDs.
  • AddedEnvironment variables for Spotify Client ID and Secret.
  • ChangedCSP headers updated for Spotify embed player security.
  • AddedNeon-arc anchors, retro-aware colors, click-to-link, double-click to remove.
  • ChangedImproved fullscreen/resize behavior; drag limited to handle.
  • AddedClean routing to PlatformContent, RichNote, Calendar, Pomodoro, TaskBoard, Flashcards, RSS.
  • AddedContent cleaning integration for thumbnail extraction.
  • ChangedImproved image detection algorithms.
  • ChangedBetter thumbnail quality selection.
  • AddedSupport for various image formats and sources.
  • AddedImage upload support with optimization.
  • ChangedImproved form validation.
  • AddedLoading states with new loading messages.
  • ChangedEnhanced user experience with better feedback.
  • AddedRetro theme styling options.
  • AddedTheme-aware button appearance.
  • ChangedAuthentication flow integration update.
  • AddedAccessibility improvements.

v0.1.7

  • AddedAdded comprehensive RSS and Atom feed parsing with autodiscovery.
  • AddedYouTube channel ID resolver supporting handles, URLs, and UC... formats.
  • AddedAdded webpage link scanning and common RSS endpoint discovery.
  • AddedIntegrated thumbnail extraction from RSS items using pickThumbnail utility.
  • AddedAdded YouTube Shorts detection and slicing with paging support.
  • AddedAdded region-based mostPopular endpoint with duration-based Shorts filtering.
  • ChangedImproved logging and comprehensive error handling throughout RSS pipeline.
  • AddedComprehensive RSS provider catalog including YouTube, Reddit, Hacker News, Medium, DEV.to, GitHub, Stack Overflow, Product Hunt, BBC, The Verge, and TechCrunch.
  • AddedYouTube special modes: support for user resolve and popular by region modes.
  • AddedAdded getProvider and rssCategories helper functions for UI integration.
  • AddedComplete TypeScript type definitions for provider configurations.
  • AddedRobust thumbnail extraction from item HTML content.
  • AddedMultiple source support: Extract from <img src>, data-src, srcset, Open Graph images, or plain URLs.
  • AddedAutomatic relative URL absolutization against link URLs.
  • AddedpickThumbnail helper prioritizing media/enclosure content.
  • ChangedFixed top/bottom connection anchors to align perfectly with card edges.
  • ChangedCorrected arc orientation to match left/right anchor styling.
  • ChangedFine-tuned transforms for consistent anchor visibility.
  • ChangedRemoved side edge resize handles, keeping only corner handles.
  • ChangedSimplified component structure by removing unused edge handle elements.
  • AddedBuild feed URLs from configurable RSS providers with dropdown interface.
  • AddedIntegrated with /api/rss endpoint with comprehensive error handling and limits.
  • AddedSplit YouTube items into Videos and Shorts with toggle functionality.
  • AddedClick RSS items to spawn PlatformContent cards (YouTube/Spotify/Web).
  • AddedFull card state persistence via onUpdate mechanism.
  • AddedAdded dedicated web content viewer with typography controls.
  • AddedFont family, size, line spacing, and word spacing controls.
  • AddedPersistent typography settings using useWebTypography hook.
  • AddedDOM-based highlight ranges with color palette.
  • AddedCollapsible highlights panel with unique highlight listing.
  • AddedConvert highlights to Rich Notes via richNoteManager.
  • AddedHighlight storage per contentId in localStorage.
  • AddedAutomatic sensible title generation from selected text.
  • AddedSupport for YouTube/Spotify/direct media with video metadata.
  • AddedConvert highlights to Rich Notes with source connections.
  • AddedComplete article annotation system with highlight management.
  • AddedOptional split editor panes for enhanced productivity.
  • AddedMerge-right-to-left utility for content consolidation.
  • AddedIntelligent auto-save with 2-second minimum intervals.
  • AddedComplete version history updates on save operations.
  • AddedConvert blob image URLs to data URLs for reliable persistence.
  • AddedAdded OCR modal with language selection using tesseract.js.
  • AddedCreate connected PlatformContent cards (YouTube/Spotify/direct/file).
  • AddedSVG connection rendering between related cards.
  • ChangedPrevent canvas pan conflicts when editing rich notes.
  • ChangedImproved focus handling within editor environment.
  • ChangedMaintain split-view compatible content structure.
  • AddedFont family options, size, line and word spacing controls.
  • AddedPersistent reading preferences across sessions.
  • AddedExpose style helpers for WebContentViewer integration.
  • AddedEnhanced accessible reading experience.
  • AddedDetect existing rich note connections for source cards.
  • AddedAppend new paragraph blocks or create new cards as needed.
  • AddedPreserve split-view compatible content structure.
  • AddedSave versions and add connections with proper anchors.
  • AddedAdded comprehensive RSS interface labels and controls.
  • AddedSupport for RSS provider names and modes.
  • AddedRich note, toolbar, and help text translations.
  • ChangedComplete translation synchronization with refinements.
  • ChangedEnhanced user interface consistency across languages.
  • AddedAdded YOUTUBE_API_KEY documentation for YouTube integrations.
  • AddedOrganized configuration sections with optional service placeholders.
  • AddedComprehensive API key and service configuration guidance.
  • ChangedUpdated to custom OWL non-commercial license v1.0.
  • AddedDefined permitted and prohibited uses with clear boundaries.
  • AddedAdded attribution, warranty disclaimer, and commercial licensing contact.
  • ChangedEnhanced legal compliance and usage transparency.
  • AddedRobust HTML fetching with proper headers and timeout handling.
  • AddedExtract title, author, publish/modify times, siteName and images.
  • AddedParse headings, paragraphs, lists, quotes, and images.
  • AddedProduce cleaned text content and smart excerpt generation.
  • AddedComprehensive URL validation and non-HTML/error state handling.

v0.1.6

  • AddedAdded server endpoint for RSS/Atom autodiscovery and parsing.
  • AddedStrict content-type validation - accept only XML/Atom/RSS.
  • AddedYouTube heuristics: channel and playlist URLs mapped to feeds/videos.xml.
  • AddedVerbose server logs for discover/fetch flows.
  • AddedNew rssFeed card type with site URL input and 'Discover' action.
  • AddedFeed selection dropdown and item list (title, date, summary).
  • AddedDetailed client logs to aid troubleshooting.
  • AddedClicking a YouTube/Spotify item creates a new linked media card.
  • AddedRSS card remains open; media card appears next to it.
  • AddedConnection persisted in content.connectedTo.sourceCardId.
  • ChangedVirtualization updated to keep media cards mounted even offscreen.
  • ChangedPrevents playback from stopping when card leaves viewport.
  • AddedAdded rssFeed to all card type unions and dialogs.
  • ChangedPage and store types updated; AddCardDialog extended with RSS option.
  • FixedDeleting a card now cancels pending debounced saves.
  • FixedImmediate IndexedDB persistence prevents deleted cards from reappearing.
  • AddedAdd interactive anchors on four sides of every card.
  • AddedSingle-click to start linking, click target anchor to complete.
  • AddedDouble-click an anchor to remove all connections at that anchor.
  • AddedElastic, curved SVG connectors that follow the cursor during linking.
  • AddedReal-time updates while dragging cards; stable during pan/zoom.
  • AddedAnchors use neon half-circle styling (purple idle, green when connected).
  • AddedNew IndexedDB store 'connections' (db version bump).
  • AddedConnections are created/removed transactionally and loaded on init.
  • AddedDeleting a card removes all connections for that card.
  • AddedGlobal cursor tracking while linking for smoother temporary line.
  • ChangedSafer cancel logic: linking cancels only on background click, not generic mouseup.
  • ChangedRemoved drag-end transform transition to eliminate jump effect.

v0.1.5

  • AddedComprehensive flashcard system: Implemented complete spaced repetition learning with SM-2 algorithm.
  • AddedMedia support for flashcards: Added support for images, audio, and video content in flashcards.
  • AddedStudy session tracking: Implemented detailed statistics and performance analytics.
  • AddedImport/export functionality: Added data portability for flashcard collections.
  • AddedOCR integration: Text extraction from images for enhanced learning content.
  • AddedDifficulty tracking: Advanced performance monitoring and adaptive learning features.
  • AddedSplit-view editing: Complete split-view editing capability for enhanced productivity.
  • ChangedAuto-save with debouncing: Intelligent auto-save system with 2-second idle periods.
  • AddedOCR integration: Text extraction from images directly within the editor.
  • AddedMedia insertion: Video and audio insertion functionality for rich content.
  • AddedVersion history: Complete version tracking and content management.
  • AddedCross-reference features: Advanced organization and linking capabilities.
  • AddedExport functionality: PDF and Markdown export options for content portability.
  • ChangedEnhanced UX: Improved keyboard event handling and user experience.
  • AddedYouTube and Spotify support: Complete embed support for major content platforms.
  • AddedVideo content detection: Automatic detection and rendering of video content.
  • AddedContent filtering: Advanced filtering and search capabilities for platform content.
  • AddedAuto-refresh: Configurable auto-refresh functionality with custom intervals.
  • AddedPagination support: Efficient handling of large content sets.
  • AddedError handling: Comprehensive fallback UI for blocked or unavailable content.
  • ChangedOptimized drag & drop: Enhanced drag and drop with useDragDrop hook integration.
  • AddedFullscreen mode: Better content viewing experience with fullscreen capabilities.
  • ChangedResize handles: Improved resize handles with grid snapping functionality.
  • ChangedHover state management: Enhanced UX with proper hover state handling.
  • ChangedPerformance optimization: Memo and useCallback optimizations for better rendering.
  • ChangedKeyboard interactions: Proper event handling for accessibility and keyboard navigation.
  • AddedResizeObserverErrorHandler: Global error handling for canvas and workspace components.
  • ChangedDocker build improvements: Conditional Google Fonts loading for better build reliability.
  • FixedTypeScript compilation: Fixed compilation errors and improved type safety.
  • ChangedPWA manifest updates: Improved app name, description, and icon configuration.
  • ChangedEnhanced installation: Better PWA installation experience across devices.
  • ChangedTheme configuration: Proper theme and background color setup.
  • AddedFavicon addition: Added favicon.png for improved site identification.
  • ChangedBranding consistency: Updated project name to 'owl-educational-social-platform'.
  • ChangedPackage updates: Updated critical dependencies to latest versions: axios: 1.12.1 → 1.12.2, highlight.js: 10.7.3 → 11.11.1, @types/node: 24.3.3 → 24.4.0, @types/dompurify: 3.0.5 → 3.2.0.
  • FixedSecurity fixes: Resolved TypeScript compilation issues and dependency conflicts.
  • ChangedPackage lock synchronization: Ensured package.json and package-lock.json consistency.

v0.1.4

  • ChangedLicense migration: Changed from PolyForm Noncommercial to Apache 2.0 license, enabling commercial use.
  • AddedCommunity guidelines: Added comprehensive CONTRIBUTING.md with development setup, coding standards, and contribution workflow.
  • AddedCode of conduct: Implemented detailed CODE_OF_CONDUCT.md with enforcement guidelines and community expectations.
  • AddedSecurity policy: Enhanced SECURITY.md with vulnerability reporting procedures and security best practices.
  • AddedGitHub templates: Created professional issue templates for bug reports and feature requests with structured forms.
  • AddedHTML sanitization: Implemented professional-grade HTML sanitization using DOMPurify library for enhanced security.
  • ChangedValidation improvements: Enhanced HTML entity decoding order and sanitization logic in validation.ts.
  • ChangedWorkflow permissions: Added minimal workflow permissions to GitHub Actions for improved security posture.
  • FixedCodeQL alert resolution: Resolved multiple CodeQL security alerts (#6, #7, #13, #14) with comprehensive fixes.
  • ChangedFirebase security: Removed hardcoded project ID from firebase-admin.ts for better security practices.
  • ChangedREADME enhancement: Updated README.md with comprehensive project information, setup instructions, and social media links.
  • AddedContributing guide: Detailed CONTRIBUTING.md with npm usage, development workflow, and project architecture.
  • AddedIssue templates: Enhanced GitHub issue templates with better structure, UX improvements, and comprehensive forms.
  • AddedTemplate configuration: Added config.yml for issue template customization and better user experience.
  • AddedSocial media integration: Added social media links and cleaned up presentation in README.
  • ChangedPackage updates: Updated critical dependencies to latest patch versions: @types/node: 24.3.1 → 24.3.3, @types/react: 19.1.12 → 19.1.13, @types/react-big-calendar: 1.16.2 → 1.16.3, axios: 1.12.0 → 1.12.1.
  • ChangedSecurity patches: Applied security updates for better compatibility and vulnerability fixes.
  • ChangedPackage lock: Comprehensive package-lock.json updates with dependency resolution improvements.
  • FixedFont loading fix: Resolved Docker build font issues with fallback fonts and Google Fonts mocking for ARM64 builds.
  • ChangedBuild optimization: Enhanced Dockerfile with better font handling and cross-platform compatibility.
  • ChangedAsset updates: Updated favicon, logo images, and public assets for better branding consistency.
  • ChangedLayout improvements: Enhanced layout files with better font loading and fallback mechanisms.
  • ChangedSensitive data removal: Removed competitor-analysis.md containing sensitive business information from public repository.
  • ChangedGit ignore updates: Added competitor-analysis.md and .cursor directory to .gitignore to prevent future accidental commits.
  • ChangedRepository structure: Cleaned up repository structure and removed unnecessary tracking files.
  • ChangedAsset optimization: Updated public assets (favicon.ico, logo.png, logo.svg) with optimized versions.
  • AddedIssue management: Enhanced GitHub issue templates with comprehensive forms and better user guidance.
  • AddedTemplate structure: Added config.yml for template customization and improved issue categorization.
  • AddedCommunity guidelines: Established clear contribution guidelines and code of conduct for open source collaboration.
  • ChangedRepository URLs: Updated all documentation with correct repository URLs for contributors.

v0.1.3

  • ChangedInfiniteCanvas improvements: Enhanced wheel zoom with exponential scaling and left-click pan functionality.
  • ChangedDrag & drop optimization: Pan/zoom aware card dragging with world coordinates and rAF synchronization.
  • ChangedPerformance optimization: Debounced IndexedDB writes to prevent unnecessary saves during drag/resize operations.
  • AddedSplit-view editor: Complete split-view persistence with content merging and state management.
  • ChangedRich Note Editor: Optimized auto-save to trigger only after 2-second idle periods instead of every change.
  • ChangedVirtualizedCardRenderer: Enhanced with pan and zoom prop passing for better canvas integration.
  • AddedClient-side media conversion: Complete FFmpeg integration for MP4→MP3 conversion, video thumbnails, and image compression.
  • AddedMediaUploader component: Drag & drop support with URL input for YouTube/Vimeo/TikTok/Twitch/Dailymotion platforms.
  • AddedImagePreview component: Resize slider with quick presets (100%/75%/50%) and alt text input support.
  • AddedVideoPlayer component: Universal player supporting react-player for platforms and HTML5 fallback for local files.
  • AddedAudioPlayer component: Waveform visualization with WaveSurfer and comprehensive lifecycle event logging.
  • AddedSide-by-side media flow: Inline-block flow for media within ProseMirror editor with responsive layout.
  • FixedIndexedDB optimization: Fixed timing issues and race conditions in workspace loading.
  • AddedError handling: Added ResizeObserverErrorHandler component for canvas and workspace error resilience.
  • ChangedDebug log cleanup: Removed all debug console logs for production readiness across all components.
  • ChangedDependency updates: Updated critical dependencies and fixed security vulnerabilities.
  • ChangedMemory management: Improved state management and reduced unnecessary re-renders.
  • AddedFFmpeg integration: Added @ffmpeg/core, @ffmpeg/ffmpeg, and @ffmpeg/util for client-side media processing.
  • AddedEnhanced editor: Added @mdxeditor/editor for improved editing capabilities.
  • ChangedDrag & drop: Updated @dnd-kit packages for better drag-and-drop functionality.
  • ChangedBlockNote update: Updated to version 0.37.0 for latest features.
  • FixedSecurity fixes: Updated axios to 1.12.0 (fixes DoS vulnerability), Prisma to 6.16.1, and other critical dependencies.
  • ChangedReact resizable panels: Updated to ^3.0.6 for better panel management.
  • AddedTranslation updates: Enhanced English and Turkish translations for new split-view and media features.
  • ChangedAccessibility: Improved accessibility labels and tooltips across media components.
  • AddedError messages: Added comprehensive error handling and success messages.
  • ChangedUI polish: Enhanced visual separator and content merging in split-view editor.
  • ChangedCursor AI rules: Updated comprehensive MCP tool activation protocols and dynamic rule sets.
  • AddedDevelopment workflow: Added utility scripts for development automation.
  • ChangedDocumentation: Enhanced commit guides and project documentation.
  • ChangedLicense update: Switched to PolyForm Noncommercial 1.0.0 for source-available non-commercial use.
  • ChangedGit configuration: Updated .gitignore to exclude documentation files from version control.
  • FixedDocker build fix: Prevented Geist font fetch during build time to fix ARM64 build failures.
  • ChangedFont optimization: Added preload: false, display: 'swap', and fallback fonts for better performance.
  • ChangedCross-platform support: Improved compatibility across different architectures.
  • AddedSplit view persistence: Complete implementation of left/right editor content separation and merging.
  • ChangedContent structure: Enhanced to support both single and split-view content with proper state management.
  • ChangedAuto-save enhancement: Improved to save both editors' content and split-view state.
  • ChangedBackward compatibility: Ensured existing single-editor content works seamlessly.

v0.1.2

  • ChangedFirebase configuration: Updated to use environment variables for better security and flexibility.
  • ChangedNext.js configuration: Enhanced with proper Firebase environment variable integration.
  • AddedEnvironment variables: Added comprehensive Firebase configuration variables to .env.example.
  • ChangedSecurity headers: Removed unnecessary CORS policies for better compatibility.
  • ChangedDatabase configuration: Updated Prisma development database with latest schema changes.
  • ChangedFlashcardSystem integration: Complete integration with workspace store and IndexedDB.
  • ChangedWorkspaceCard improvements: Enhanced drag-and-drop functionality and event handling.
  • ChangedAddCardDialog updates: Added BarChart3 icon and improved UI components.
  • FixedInfiniteCanvas fixes: Fixed wheel event handling and improved event listener management.
  • ChangeduseWorkspaceStore hook: Comprehensive flashcard support with proper data persistence.
  • AddedProgress dashboard translations: Added comprehensive translations for progress tracking features.
  • AddedEnglish messages: Enhanced with 35+ new translation keys for progress dashboard.
  • AddedTurkish messages: Complete Turkish translations for all new progress features.
  • ChangedConsistent localization: Ensured all new features have proper multilingual support.
  • ChangedAuthContext improvements: Enhanced authentication state management.
  • ChangedLoginButton updates: Improved error handling and user feedback.
  • ChangedFirebase integration: Better error handling for authentication failures.
  • ChangedSecurity headers: Optimized security configuration for better performance.
  • ChangedNext.js update: Upgraded to version 15.5.3 for latest features and security patches.
  • ChangedESLint configuration: Updated to match Next.js version for better compatibility.
  • AddedNew dependencies added: @blocknote/core, @blocknote/mantine, @blocknote/react - rich text editing.
  • Added@react-pdf/renderer - PDF generation capabilities added.
  • Addedmammoth - document conversion utilities added.
  • Addedreact-zoom-pan-pinch - enhanced zoom and pan functionality added.
  • Addedtesseract.js - OCR capabilities added.
  • Addedturndown - HTML to Markdown conversion added.
  • ChangedPackage lock updates: Comprehensive dependency resolution and security updates.
  • ChangedIndexedDB enhancement: Updated to version 3 with flashcard support.
  • AddedDatabase schema: Added new stores for flashcards, progress tracking, and study sessions.
  • ChangedData migration: Improved data handling and storage efficiency.
  • AddedDebug utilities: Added comprehensive debugging tools for IndexedDB operations.
  • ChangedFile cleanup: Removed outdated documentation files (EDUCATIONAL_WORKSPACE_ROADMAP.md, FIREBASE_SETUP.md).
  • AddedLICENSE addition: Added MIT license with commercial use restrictions.
  • ChangedCode organization: Improved code structure and removed redundant dependencies.
  • ChangedDocumentation updates: Enhanced inline documentation and code comments.
  • FixedEvent handling: Fixed wheel event handling in InfiniteCanvas component.
  • ChangedMemory management: Improved memory usage in workspace components.
  • ChangedError handling: Enhanced error handling across authentication and data operations.
  • ChangedPerformance optimization: Better state management and reduced unnecessary re-renders.

v0.1.1

  • FixedFixed missing 'update' translation key for flashcards in both English and Turkish.
  • AddedAdded comprehensive flashcard system translations (100+ new keys).
  • AddedAdded work environment translations for all new features.
  • AddedAdded image viewer translations with keyboard shortcuts.
  • FixedFixed MISSING_MESSAGE error in FlashcardSystem component.
  • AddedFlashcardSystem: Complete spaced repetition learning system with statistics, categories, and import/export.
  • AddedTaskBoard: Full Kanban-style task management with drag-and-drop, priorities, due dates, and subtasks.
  • AddedWorkspaceCard: Resizable and draggable workspace cards with fullscreen support.
  • AddedCalendarView: Event management system with recurring events and multiple views.
  • AddedPomodoroTimer: Productivity timer with customizable work/break intervals and statistics.
  • AddedRichNoteEditor: Advanced note-taking with markdown support and version history.
  • AddedInfiniteCanvas: Visual workspace with zoom, pan, and grid snap functionality.
  • AddedAdded Work Environment navigation item to main menu.
  • ChangedEnhanced post detail page with image lightbox functionality.
  • ChangedAdded hover effects and click-to-view for post images.
  • ChangedImproved image viewer with keyboard shortcuts and better accessibility.
  • FixedFixed mini-chart component edge cases and data handling.
  • ChangedUpdated navigation with Monitor icon for work environment.
  • ChangedImproved content filter service with proper image deletion.
  • AddedVirtualizedCardRenderer: Added for large canvas performance improvements.
  • ChangedInfiniteCanvas optimization: Implemented memoization and throttled updates.
  • ChangeduseDragDrop hook: Optimized performance for drag and drop operations.
  • ChangedPlatformContentCard: Enhanced memory management and rendering efficiency.
  • ChangedIndexedDB migration: Improved workspace storage performance.
  • ChangedPrisma dependencies: Updated to latest version for better performance.
  • ChangedEnhanced middleware with permissive CSP for work environment.
  • FixedFixed locale prefix handling to prevent undefined locale errors.
  • ChangedImproved database transaction handling for post and image deletion.
  • AddedAdded comprehensive state management with useWorkspaceStore hook.
  • ChangedUpdated API routes with better error handling and data consistency.
  • FixedFixed TypeScript compilation issues and dependency management.
  • AddedAdded platform-content API endpoint for enhanced content integration.
  • AddedIntegrated performance optimizations in work environment page.
  • AddedAdded PerformanceMonitor with accurate metrics and monitoring.
  • ChangedOptimized WorkspaceCard with advanced memoization techniques.
  • ChangedEnhanced AddCardDialog for better work environment integration.

v0.1.0

  • AddedInitial release of OWL Academic Social Learning Platform - complete setup with 250 files and 58,962 lines of code.
  • AddedFull Next.js application with TypeScript and React infrastructure established.
  • AddedDatabase integration with Prisma ORM and SQLite added.
  • AddedUser authentication system with NextAuth.js implemented.
  • AddedAdmin dashboard and user management features added.
  • AddedCommunity and group management system implemented.
  • AddedContent creation and sharing capabilities added.
  • AddedDocker configuration and CI/CD pipeline setup completed.
  • AddedModern UI components with glassmorphism effects - backdrop blur and transparent glass effects.
  • AddedVisuallyHidden component added for accessibility.
  • ChangedFixed image lightbox positioning issues by removing fullscreen feature.
  • ChangedAdded modern hover effects and smooth transitions.
  • ChangedOptimized design for both light and dark themes.
  • ChangedAdded cross-browser support for backdrop filters.

v0.3.2

🤖 AI Content Generation

Article simplification and age-group based content

  • AddedSimplified Article Generation - AI-powered article simplification with two simplification levels: Full Simplified and Executive Summary.
  • AddedFull Simplified mode - complete markdown article with glossary and explanations.
  • AddedExecutive Summary mode - concise summary with key points.
  • AddedAge group-based simplification - AI-powered simplification based on age group (elementary, middle, high, university).
  • AddedSmart content parsing - glossary extraction and content parsing.
  • AddedReaderDialog component - enhanced article viewing experience with optimized typography.
  • AddedSimplificationLevelSelector component - UI component for choosing between full or summary.
  • AddedAISimplifiedArticleViewer component - dedicated viewer for simplified articles.
  • AddedAIContentRenderer component - unified content rendering for all AI-generated content types.
  • AddedIntegration with AI content modal - seamless workflow integration.
  • AddedAI Generation API - new content type: simplified-article.
  • AddedSimplification level validation - validation for simplification levels.
  • AddedCustom token allocation - custom token allocation for full vs summary.
  • AddedEnhanced prompt templates - enhanced prompt templates for article simplification.

📱 Mobile & UX

Pull-to-refresh, responsive design, and mobile improvements

  • AddedPull-to-Refresh hook - new usePullToRefresh hook for touch-based refresh.
  • AddedFollowing page pull-to-refresh - implemented on Following page with visual feedback.
  • AddedConfigurable threshold - configurable threshold and max distance for pull-to-refresh.
  • AddedSmooth animation - smooth animation with loading state.
  • AddedFollowing page improvements - enhanced social feed experience with pull-to-refresh functionality.
  • AddedTheme switcher dropdown - Light/Dark theme switcher on Following page.
  • AddedLanguage switcher - EN/TR language switcher on Following page.
  • AddedQuick logout option - logout option in more menu.
  • AddedAI Contents shortcut button - quick access to AI contents.
  • AddedImproved mobile responsiveness - better mobile responsiveness on Following page.
  • AddedMobile Navigation - added to layout with proper bottom padding.
  • AddedResponsive spacing adjustments - improved spacing for mobile.
  • AddedImproved touch targets - better touch targets for mobile.
  • AddedUserProfile mobile improvements - improved icon sizing and text responsiveness.
  • AddedUserProfileHeader mobile optimization - better avatar sizing, button wrapping, responsive layout.
  • AddedUserProfilePosts mobile-optimized grid - mobile-optimized grid layout (1-3 columns).
  • AddedUserProfileStats responsive cards - responsive card sizing and icon adjustments.
  • AddedConsistent spacing - all components with consistent spacing (md: breakpoints).
  • FixedMobile responsiveness - better mobile responsiveness across all profile components.
  • FixedChat panel transitions - improved chat panel transitions.

👤 User Profile

Profile API improvements and state synchronization

  • AddedSettings page improvements - automatic profile refresh after save/failure.
  • AddedImproved state synchronization - better state synchronization with server.
  • AddedRollback to server state - automatic rollback to server state on errors.
  • AddedUser Profile API enhancements - enhanced error handling and consistency.
  • AddedBetter error messages - error messages with errorKey support.
  • AddedhoursRemaining handling - hoursRemaining handling for rate limit errors.
  • AddedAutomatic server sync - automatic server sync after updates/failures.
  • AddedConsistent behavior - consistent behavior between /api/users and /api/users/profile.
  • FixedError handling improvements - improved error handling in profile updates.

🧰 API & Configuration

Feed API improvements and real-time updates

  • AddedUnified API endpoint - unified API endpoint for community and AI content.
  • AddedFocus and visibility listeners - auto-refresh on focus and visibility changes.
  • AddedGrade change warning - grade change warning display with 24h information.

🌐 i18n Updates

Internationalization for simplified articles

  • AddedEnglish translations - added simplifiedArticle content type labels, simplificationLevel selector options, more navigation key.
  • AddedTurkish translations - added simplified article translations, simplification level labels, more navigation key.

🐛 Bug Fixes

Critical bug fixes and improvements

  • FixedFirst-time country assignment - first-time country assignment doesn't count toward monthly limit.
  • FixedTypeScript error fix - fixed TypeScript error in AI generation chunking logic.
  • FixedCountry quota logic fix - fixed country quota logic for first-time assignments.
  • FixedNavigation structure - fixed navigation structure inconsistencies.