# **App Name**: CipherIdentity ## Core Features: - Instant Messaging: Send and receive text messages in real-time. - Media Sharing: Share images, videos, audio, and files. - Group Chats & Channels: Create and join group conversations. - Voice & Video Calls: High-quality calls using WebRTC, including group calls. - Emojis & Stickers: Rich messaging experience. - Presence Indicators: Online/offline, typing, last seen. - Push Notifications: Send push notifications. - Light/Dark Mode: Switch between light and dark mode. - Device-Based Login: Secure authentication without phone numbers or emails. Each device generates its own cryptographic identity. On signup, generate a Recovery Key locally for account restoration. - Themed Responses: Use a tool to allow the LLM to evaluate if an incoming message or prompt is related to either: travel, relationships, recipes, or weather. If it is, decorate the message history with a themed css effect in order to provide a relevant stylistic flourish to the response, helping it seem more dynamic. - Data Saver Mode: Batch Sync — Instead of a persistent WebSocket, the app syncs with the server every 30s when enabled. Queued Messages — Outgoing messages are stored locally and sent in bulk on the next sync cycle. Bulk Delivery — Incoming messages are fetched and delivered together. Compression — Use message batching with lightweight compression (e.g., gzip or Protobuf). Fallback — User can switch back to real-time mode anytime. ## Style Guidelines: - Font: 'Inter' (sans-serif) for headings and body. - Icons: Minimalist vector style. - Layout: Responsive 12-column grid. - Animations: Subtle transitions for navigation, smooth message interactions.