Skip to content

xtoazt/realtalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

151 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

real. - Modern Real-Time Chat Application

A production-ready, modern real-time chat application built with Next.js, TypeScript, and Tailwind CSS.

✨ Features

🎨 Modern UI/UX

  • Revamped Design System: Complete overhaul with modern glass morphism effects
  • Improved Dark Mode: Fixed dark mode implementation with proper color schemes
  • Smooth Animations: Enhanced transitions and micro-interactions
  • Responsive Design: Optimized for all device sizes
  • Accessibility: ARIA labels, keyboard navigation, and screen reader support

πŸ”” Smart Notifications

  • Tab-Aware Notifications: Only shows notifications when user is on different tabs
  • Global Notification System: Works from any chat, not just the current one
  • Click Navigation: Click notifications to navigate directly to the relevant chat
  • Permission Management: Proper notification permission handling

🎯 Production Improvements

  • Performance Optimized: Faster loading times and smoother interactions
  • Error Handling: Comprehensive error boundaries and user feedback
  • Type Safety: Full TypeScript implementation
  • Build Optimization: Successful production builds with no errors
  • SSR Compatible: Works with server-side rendering

πŸš€ Enhanced Features

  • Modern Theme Toggle: Smooth theme switching with server persistence
  • Improved Chat Experience: Better message handling and real-time updates
  • Enhanced Navigation: Intuitive navigation with visual feedback
  • Better User Experience: Loading states, error messages, and success feedback

πŸ€– Smart AI Features

  • AI-Powered Chat Input: Real-time sentiment analysis, content moderation, and smart suggestions
  • Smart Message Display: AI insights, tone analysis, and conversation context
  • Smart AI Assistant: Conversation analysis, summaries, and contextual help
  • Multiple AI Personas: Choose from 5 different AI personalities (Assistant, Tutor, Creative, Coder, Wellness Guide)
  • Language Translation: Real-time message translation in 10+ languages
  • Smart Settings: Comprehensive AI preferences and feature management
  • Content Moderation: Automatic detection of inappropriate content
  • Conversation Insights: Analytics on conversation pace, participants, and activity
  • Smart Summaries: AI-generated conversation summaries for long chats
  • Contextual Help: Intelligent assistance based on current conversation context

πŸ› οΈ Technology Stack

  • Frontend: Next.js 15, React 19, TypeScript
  • Styling: Tailwind CSS with custom design system
  • UI Components: Radix UI primitives with custom styling
  • State Management: React Context with custom hooks
  • Real-time: Socket.IO for live messaging
  • Database: SQLite with Neon serverless
  • Authentication: Custom JWT-based auth system
  • AI Integration: Google Gemini AI for smart features
  • AI Models: Gemini 1.5 Flash & Pro for different capabilities

πŸš€ Getting Started

Prerequisites

  • Node.js 18+
  • pnpm (recommended) or npm

Installation

  1. Clone the repository

    git clone <repository-url>
    cd realtalk
  2. Install dependencies

    pnpm install
  3. Set up environment variables

    cp .env.example .env.local
    # Edit .env.local with your configuration
  4. Run database migrations

    pnpm run migrate
  5. Start the development server

    pnpm run dev
  6. Open your browser Navigate to http://localhost:3000

πŸ§ͺ Testing

Automated Testing

Run the comprehensive test suite:

node test-site.js

This will test:

  • βœ… Basic navigation and loading
  • βœ… Authentication system
  • βœ… Dashboard functionality
  • βœ… Theme toggle and persistence
  • βœ… Navigation menu
  • βœ… Global chat functionality
  • βœ… Settings page
  • βœ… Responsive design
  • βœ… Dark mode persistence
  • βœ… Error handling
  • βœ… Performance metrics

Smart AI Features Testing

Test the AI-powered features:

node test-smart-features.js

This will test:

  • βœ… Smart Chat Input with AI analysis
  • βœ… Smart Message display with insights
  • βœ… Smart AI Assistant functionality
  • βœ… Smart Settings and AI preferences
  • βœ… Translation features
  • βœ… Smart suggestions
  • βœ… Content moderation
  • βœ… Conversation insights
  • βœ… AI persona switching
  • βœ… Performance and responsiveness
  • βœ… Accessibility compliance
  • βœ… Accessibility features

Manual Testing Checklist

Core Functionality

  • User registration and login
  • Global chat messaging
  • Direct messaging
  • Group chat creation and management
  • Friend requests and management
  • Poll creation and voting
  • Channel management
  • Voice chat (if enabled)

UI/UX Features

  • Dark/light mode toggle
  • Color hue customization
  • Responsive design on mobile/tablet/desktop
  • Smooth animations and transitions
  • Loading states and error messages
  • Accessibility features (keyboard navigation, screen readers)

Notifications

  • Notification permission request
  • Notifications only show when on different tabs
  • Click notifications to navigate to relevant chats
  • Notification content and formatting
  • Notification auto-dismiss

Performance

  • Fast page loading
  • Smooth scrolling and interactions
  • Real-time message updates
  • Efficient resource usage

🎨 Design System

Color Palette

  • Primary: Modern grays with accent colors
  • Hue System: Customizable accent colors (blue, purple, pink, red, orange, yellow, green, teal)
  • Dark Mode: Proper contrast ratios and accessibility

Components

  • Modern Buttons: Multiple variants with hover effects
  • Glass Cards: Backdrop blur effects with transparency
  • Enhanced Inputs: Better focus states and validation
  • Responsive Layout: Mobile-first design approach

Animations

  • Fade In: Smooth page transitions
  • Slide In: Navigation animations
  • Scale In: Interactive element feedback
  • Hover Effects: Subtle lift and glow effects

πŸ”§ Configuration

Environment Variables

# Database
DATABASE_URL=your_database_url

# Authentication
JWT_SECRET=your_jwt_secret

# External Services
GROQ_API_KEY=your_groq_api_key
FIREBASE_CONFIG=your_firebase_config

Customization

  • Colors: Modify app/globals.css for color scheme changes
  • Components: Update UI components in components/ui/
  • Animations: Adjust timing in CSS animations
  • Notifications: Configure in lib/notification-service.ts

πŸ“± Browser Support

  • Chrome 90+
  • Firefox 88+
  • Safari 14+
  • Edge 90+

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Support

For support, please open an issue in the GitHub repository or contact the development team.


Built with ❀️ using modern web technologies