Skip to content

MMansy19/zawag

Repository files navigation

Islamic Zawaj Platform Logo

Islamic Zawaj Platform

A comprehensive Next.js 14 platform for Islamic marriage connections

Built with privacy, moderation, and cultural sensitivity at its core

Live Demo Version License

🌟 Features β€’ πŸš€ Live Demo β€’ πŸ“– Documentation β€’ 🀝 Support


πŸ“‹ Table of Contents


🌟 Features

πŸ‘€ User Management & Authentication

  • Smart Registration System: 8-step guided profile creation with Islamic values integration
  • OTP Verification: Secure phone/email verification with SMS and email support
  • Profile Builder Wizard: Comprehensive profile creation with privacy controls
  • Religious Compatibility: Madhab, prayer level, and religious commitment matching
  • Family Background: Educational, professional, and family information management
  • Photo Privacy Controls: Advanced privacy settings for profile pictures
  • Account Security: Two-factor authentication and secure password policies

πŸ” Advanced Search & Discovery

  • Smart Filtering System: Age, location, education, profession, and religious criteria
  • Privacy-Respecting Search: Users control who can view their profiles
  • Compatibility Scoring: AI-powered compatibility assessment based on Islamic principles
  • Geographic Search: Location-based matching with privacy controls
  • Saved Searches: Save and track preferred search criteria
  • Profile Bookmarking: Save interesting profiles for later review
  • Advanced Filters: Detailed filtering by lifestyle, family background, and preferences

πŸ’¬ Communication & Interaction

  • Secure Marriage Requests: Formal introduction system with parental involvement options
  • Moderated Chat System: Real-time messaging with Islamic guidelines enforcement
  • Rate-Limited Messaging: Prevents spam and encourages meaningful conversations
  • Auto-Translation: Arabic/English translation support for better communication
  • File Sharing: Secure document and image sharing with moderation
  • Voice Messages: Audio message support with content moderation
  • Video Call Integration: Secure video calling with family supervision options

πŸ›‘οΈ Privacy & Security

  • End-to-End Encryption: Military-grade encryption for all sensitive communications
  • Islamic Privacy Controls: Respects Islamic guidelines for male-female interactions
  • Parental Oversight: Optional parental involvement and supervision features
  • Data Protection: GDPR/CCPA compliant with Islamic privacy principles
  • Anonymous Browsing: View profiles without revealing identity initially
  • Secure File Upload: Encrypted file storage with AWS S3 integration
  • Activity Logging: Comprehensive audit trails for security monitoring

πŸ€– AI-Powered Moderation

  • Arabic Content Analysis: Advanced NLP for Arabic and English content moderation
  • Islamic Guidelines Enforcement: Automatic detection of inappropriate content
  • Behavioral Analysis: Pattern recognition for identifying suspicious activities
  • Automated Warnings: Smart warning system for policy violations
  • Real-time Monitoring: 24/7 automated content and behavior monitoring
  • Cultural Sensitivity AI: Respects Islamic cultural norms in content analysis

πŸ‘¨β€πŸ’Ό Admin & Management

  • Comprehensive Dashboard: Real-time analytics and user management
  • Content Moderation Panel: Review and moderate user-generated content
  • User Management System: Account status management and user support
  • Request Monitoring: Track and moderate marriage requests and communications
  • Analytics & Reporting: Detailed insights into platform usage and success rates
  • Bulk Operations: Efficient management of large user bases
  • Notification Management: Platform-wide and targeted user notifications

🌍 Internationalization & Accessibility

  • Full RTL Support: Complete right-to-left layout for Arabic language
  • Multi-language Support: Arabic and English with seamless switching
  • WCAG 2.1 AA Compliance: Full accessibility for users with disabilities
  • Screen Reader Optimization: Enhanced support for visually impaired users
  • Keyboard Navigation: Complete keyboard-only navigation support
  • High Contrast Mode: Accessibility-focused color schemes
  • Font Size Controls: Adjustable text sizes for better readability

πŸ“± Mobile & Cross-Platform

  • Mobile-First Design: Optimized for smartphones and tablets
  • Progressive Web App: Installable web app with offline capabilities
  • Cross-Browser Support: Compatible with all modern browsers
  • Responsive Design: Seamless experience across all device sizes
  • Touch Optimization: Enhanced touch interactions for mobile devices
  • Offline Mode: Basic functionality available without internet connection

πŸ”” Communication & Notifications

  • Real-time Notifications: Instant alerts for messages, requests, and matches
  • Email Integration: Professional email notifications with Islamic greetings
  • SMS Notifications: Critical alerts via SMS with global support
  • Push Notifications: Browser and mobile push notification support
  • Customizable Alerts: Users control notification frequency and types
  • Prayer Time Reminders: Optional Islamic prayer time notifications

πŸ“Š Analytics & Insights

  • Success Rate Tracking: Monitor successful marriages through the platform
  • User Engagement Analytics: Understand user behavior and preferences
  • Performance Monitoring: Real-time performance and uptime tracking
  • Compatibility Analytics: AI-driven insights into successful matches
  • Usage Statistics: Comprehensive platform usage and engagement metrics

οΏ½ Live Demo

🌐 Experience the platform: https://alzawajalsaeid.vercel.app

Demo Credentials

πŸ“Έ Screenshots

Homepage Dashboard
Profile Builder Chat Interface

πŸ› οΈ Tech Stack

Frontend

  • Framework: Next.js 14 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS with RTL plugin
  • Icons: Lucide React
  • Animations: GSAP with accessibility considerations
  • State Management: React Context + useReducer
  • Forms: React Hook Form + Zod validation
  • Testing: Jest + React Testing Library + Playwright

Backend Integration

  • API Client: Axios with interceptors
  • Real-time: Socket.IO for chat
  • Authentication: JWT with secure cookies
  • File Upload: AWS S3 integration
  • Notifications: Email (SendGrid) + SMS (Twilio)

Development

  • Code Quality: ESLint + Prettier + Husky
  • Documentation: Storybook for components
  • Performance: Bundle analyzer + Lighthouse
  • Deployment: Vercel optimized

πŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • npm 9+
  • Git

Installation

  1. Clone the repository

    git clone https://github.com/your-org/islamic-zawaj-platform.git
    cd islamic-zawaj-platform
  2. Install dependencies

    npm install
  3. Set up environment variables

    cp .env.local.example .env.local
    # Edit .env.local with your configuration
  4. Run development server

    npm run dev
  5. Open in browser

    http://localhost:3000
    

Development Scripts

# Development
npm run dev              # Start development server
npm run type-check       # TypeScript type checking

# Building
npm run build           # Production build
npm run start           # Start production server
npm run analyze         # Bundle analysis

# Code Quality
npm run lint            # ESLint
npm run lint:fix        # Fix ESLint issues

# Testing
npm run test            # Unit tests
npm run test:watch      # Watch mode
npm run test:coverage   # Coverage report
npm run test:e2e        # End-to-end tests

# Documentation
npm run storybook       # Component documentation

πŸ“ Project Structure

islamic-zawaj-platform/
β”œβ”€β”€ app/                          # Next.js App Router
β”‚   β”œβ”€β”€ (auth)/                   # Auth route group
β”‚   β”‚   β”œβ”€β”€ register/             # Registration flow
β”‚   β”‚   └── login/                # Login page
β”‚   β”œβ”€β”€ (dashboard)/              # Protected dashboard routes
β”‚   β”‚   β”œβ”€β”€ profile/              # Profile management
β”‚   β”‚   β”œβ”€β”€ search/               # Search functionality
β”‚   β”‚   β”œβ”€β”€ requests/             # Marriage requests
β”‚   β”‚   β”œβ”€β”€ chat/                 # Chat system
β”‚   β”‚   └── settings/             # User settings
β”‚   β”œβ”€β”€ admin/                    # Admin dashboard
β”‚   β”‚   β”œβ”€β”€ users/                # User management
β”‚   β”‚   β”œβ”€β”€ requests/             # Request moderation
β”‚   β”‚   β”œβ”€β”€ messages/             # Message moderation
β”‚   β”‚   └── settings/             # Platform settings
β”‚   β”œβ”€β”€ api/                      # API routes
β”‚   β”œβ”€β”€ globals.css               # Global styles
β”‚   β”œβ”€β”€ layout.tsx                # Root layout
β”‚   β”œβ”€β”€ page.tsx                  # Home page
β”‚   β”œβ”€β”€ loading.tsx               # Loading UI
β”‚   β”œβ”€β”€ error.tsx                 # Error UI
β”‚   └── not-found.tsx             # 404 page
β”œβ”€β”€ components/                   # Reusable UI components
β”‚   β”œβ”€β”€ common/                   # Generic components
β”‚   β”‚   β”œβ”€β”€ Button/               # Button variants
β”‚   β”‚   β”œβ”€β”€ Input/                # Form inputs
β”‚   β”‚   β”œβ”€β”€ Card/                 # Card layouts
β”‚   β”‚   β”œβ”€β”€ Modal/                # Modal dialogs
β”‚   β”‚   └── Navigation/           # Navigation components
β”‚   β”œβ”€β”€ auth/                     # Authentication components
β”‚   β”‚   β”œβ”€β”€ OTPInput/             # OTP verification
β”‚   β”‚   β”œβ”€β”€ RegistrationForm/     # Multi-step registration
β”‚   β”‚   └── ProfileBuilder/       # Profile creation wizard
β”‚   β”œβ”€β”€ search/                   # Search components
β”‚   β”‚   β”œβ”€β”€ FilterSidebar/        # Search filters
β”‚   β”‚   β”œβ”€β”€ ProfileCard/          # Profile preview cards
β”‚   β”‚   └── SearchResults/        # Results display
β”‚   β”œβ”€β”€ chat/                     # Chat components
β”‚   β”‚   β”œβ”€β”€ ChatWindow/           # Main chat interface
β”‚   β”‚   β”œβ”€β”€ MessageInput/         # Message composer
β”‚   β”‚   └── MessageBubble/        # Individual messages
β”‚   β”œβ”€β”€ admin/                    # Admin components
β”‚   β”‚   β”œβ”€β”€ Dashboard/            # Admin overview
β”‚   β”‚   β”œβ”€β”€ UserTable/            # User management
β”‚   β”‚   β”œβ”€β”€ ModerationPanel/      # Content moderation
β”‚   β”‚   └── SettingsForm/         # Platform configuration
β”‚   └── ui/                       # Base UI primitives
β”œβ”€β”€ lib/                          # Utilities and configurations
β”‚   β”œβ”€β”€ api/                      # API client and endpoints
β”‚   β”œβ”€β”€ auth/                     # Authentication utilities
β”‚   β”œβ”€β”€ validation/               # Zod schemas
β”‚   β”œβ”€β”€ hooks/                    # Custom React hooks
β”‚   β”œβ”€β”€ utils/                    # Helper functions
β”‚   β”œβ”€β”€ constants/                # Application constants
β”‚   └── types/                    # TypeScript type definitions
β”œβ”€β”€ context/                      # React Context providers
β”‚   β”œβ”€β”€ AuthContext.tsx           # Authentication state
β”‚   β”œβ”€β”€ ThemeContext.tsx          # Theme configuration
β”‚   └── ChatContext.tsx           # Real-time chat state
β”œβ”€β”€ public/                       # Static assets
β”‚   β”œβ”€β”€ fonts/                    # Arabic fonts
β”‚   β”œβ”€β”€ images/                   # Images and icons
β”‚   └── locales/                  # Translation files
β”œβ”€β”€ tests/                        # Test files
β”‚   β”œβ”€β”€ __mocks__/                # Test mocks
β”‚   β”œβ”€β”€ components/               # Component tests
β”‚   β”œβ”€β”€ pages/                    # Page tests
β”‚   └── e2e/                      # End-to-end tests
β”œβ”€β”€ styles/                       # Additional styles
β”œβ”€β”€ docs/                         # Documentation
└── .storybook/                   # Storybook configuration

🎨 Design System

Colors

  • Primary: #5d1a78 (Deep Purple) - Buttons, links, highlights
  • Secondary: #4CAF50 (Green) - Success states, secondary actions
  • Accent: #FBC02D (Yellow) - Warnings, callouts
  • Error: #D32F2F (Red) - Error states, danger actions

Typography

  • Primary Font: Noto Kufi Arabic (modern, clean)
  • Secondary Font: Amiri (traditional, serif)
  • Sizes: xs(12px), sm(14px), md(16px), lg(20px), xl(24px), 2xl(32px)

Spacing

  • Scale: xxs(4px), xs(8px), sm(16px), md(24px), lg(32px), xl(48px)

Components

All components follow Islamic design principles with:

  • Clean, minimalist aesthetics
  • Respectful color choices
  • Arabic-first typography
  • RTL-optimized layouts
  • Accessibility compliance

πŸ” Security & Privacy

Data Protection

  • End-to-end encryption for sensitive data
  • GDPR/privacy law compliance
  • Secure file upload and storage
  • Rate limiting and DDoS protection

Content Moderation

  • AI-powered message filtering
  • Admin review workflow
  • User reporting system
  • Strike-based enforcement

Authentication

  • JWT-based authentication
  • OTP verification for registration
  • Session management
  • Role-based access control

🌍 Internationalization

Arabic Support

  • Full RTL layout support
  • Arabic typography optimization
  • Cultural appropriate iconography
  • Islamic calendar integration

Accessibility

  • WCAG 2.1 AA compliance
  • Screen reader optimization
  • Keyboard navigation
  • High contrast support
  • Reduced motion preferences

πŸ§ͺ Testing Strategy

Unit Testing

  • Component testing with React Testing Library
  • Hook testing with custom test utilities
  • Utility function testing
  • 80%+ code coverage target

Integration Testing

  • API integration testing
  • Form workflow testing
  • Authentication flow testing

End-to-End Testing

  • Critical user journey testing
  • Cross-browser compatibility
  • Mobile responsiveness testing
  • Performance testing

πŸ“Š Performance

Optimizations

  • Image optimization with Next.js
  • Font loading optimization
  • Bundle splitting and lazy loading
  • Caching strategies
  • CDN integration

Monitoring

  • Real-time performance monitoring
  • Error tracking with Sentry
  • User analytics (privacy-compliant)
  • Core Web Vitals tracking

πŸš€ Deployment

Production Build

npm run build
npm run start

Vercel Deployment

# Install Vercel CLI
npm i -g vercel

# Deploy
vercel --prod

Environment Variables

Set the following in your deployment environment:

  • NEXT_PUBLIC_API_BASE_URL
  • DATABASE_URL
  • JWT_SECRET
  • AWS_S3_BUCKET_URL
  • Additional vars from .env.local.example

🀝 Contributing

Development Guidelines

  1. Follow conventional commit messages
  2. Use TypeScript strictly
  3. Write tests for new features
  4. Follow Islamic design principles
  5. Ensure RTL compatibility
  6. Maintain accessibility standards

Code Style

  • ESLint + Prettier configuration
  • Husky pre-commit hooks
  • TypeScript strict mode
  • Component composition patterns

Pull Request Process

  1. Fork the repository
  2. Create feature branch
  3. Write tests
  4. Ensure all checks pass
  5. Submit PR with detailed description

πŸ“š Documentation

Component Documentation

  • Storybook: npm run storybook
  • API Documentation: /docs/api
  • Design System: /docs/design-system

Additional Resources

πŸ”— Related Projects

πŸ“„ License

This project is proprietary and confidential. Unauthorized copying, distribution, or use is strictly prohibited.

πŸ†˜ Support

Technical Support

Islamic Guidance

  • Consultation with Islamic scholars
  • Cultural sensitivity reviews
  • Religious compliance verification

πŸ‘¨β€πŸ’» Author & Team

Lead Developer

Your Name
Full-Stack Developer & Islamic Tech Specialist

GitHub LinkedIn Email

Specialized in building culturally sensitive applications for the Muslim community

🀝 Contributing Team

  • Islamic Scholars: Religious guidance and cultural sensitivity review
  • UX/UI Designers: Islamic-inspired design and user experience
  • Security Experts: Privacy and data protection specialists
  • Community Managers: User support and community building

🌟 Project Stats

GitHub stars GitHub forks GitHub watchers

GitHub issues GitHub pull requests Last commit


πŸ“„ License

This project is proprietary and confidential. Unauthorized copying, distribution, or use is strictly prohibited.

Β© 2024 Islamic Zawaj Platform. All rights reserved.


🀲 Islamic Blessing

Ψ¨Ψ³Ω… Ψ§Ω„Ω„Ω‡ Ψ§Ω„Ψ±Ψ­Ω…Ω† Ψ§Ω„Ψ±Ψ­ΩŠΩ…

May Allah bless this project and make it a means of bringing together righteous Muslim couples in halal marriages. May it be a source of barakah and contribute to strengthening the Muslim ummah through blessed unions.

Ameen Ya Rabb al-Alameen


Built with ❀️ and Islamic values for the Muslim community worldwide

🌟 Live Demo | πŸ“š Documentation | πŸ†˜ Support