Skip to content

FushionHub/jodiscar

Repository files navigation

JodisCars v1.2 - Comprehensive Car Marketplace PWA

JodisCars Logo

JodisCars is a sophisticated Progressive Web Application (PWA) for buying and selling cars with enterprise-grade features, multi-currency support, and AI-powered assistance.

πŸš— Features

Core Functionality

  • Car Listings: Browse thousands of quality vehicles with detailed information
  • Advanced Search: Filter by make, model, year, price, location, and more
  • Professional Inspections: Book certified mechanic inspections with detailed reports
  • Secure Payments: Multiple payment gateways including crypto support
  • Multi-Currency Support: 8 currencies (USD, NGN, JOD, EUR, GBP, BNB, USDT, BTC)
  • Real-time Currency Conversion: Live exchange rates for accurate pricing

Payment Systems

  • Flutterwave: African payment gateway
  • Paystack: Nigerian payment processing
  • Cryptocurrency: Bitcoin, USDT, BNB support
  • Bank Transfer: Local bank transfer system with admin approval

Authentication & Security

  • Email/Username Login: Traditional authentication
  • OAuth Integration: Google and GitHub OAuth
  • Email OTP: Two-factor authentication
  • Password Reset: Secure password recovery
  • Onboarding Process: User-friendly registration flow

User Experience

  • Responsive Design: Mobile-first design with tablet and desktop optimization
  • Progressive Web App: Offline capabilities and app-like experience
  • AI Assistant: Gemini AI-powered customer support
  • Cookie Consent: GDPR-compliant cookie management
  • Newsletter Subscription: Marketing and updates system

Admin Features

  • Comprehensive Dashboard: Monitor all platform activities
  • CMS Integration: Content management system
  • Page Builder: Create and update pages without code
  • User Management: Manage users, subscriptions, and permissions
  • Payment Gateway Management: Update API keys and settings
  • Analytics Dashboard: User activity, country statistics, browser data

Additional Features

  • Blog System: Rich text editor for content creation
  • Review System: User reviews and ratings
  • Contact System: Contact forms with email integration
  • Location Services: User location and IP tracking
  • AdSense Integration: Monetization support
  • Analytics: Google Analytics and Vercel Analytics
  • Email System: SMTP integration for notifications

πŸ›  Technology Stack

Frontend

  • React 18: Modern React with hooks and context
  • TypeScript: Type-safe development
  • Tailwind CSS: Utility-first CSS framework
  • React Router: Client-side routing
  • Framer Motion: Smooth animations
  • React Hook Form: Form management
  • React Helmet: SEO optimization

Backend Ready

  • Supabase Ready: Database and authentication setup
  • Edge Functions: Serverless function support
  • Real-time Subscriptions: Live data updates

Development Tools

  • Vite: Fast development server
  • ESLint: Code linting
  • TypeScript: Static type checking
  • Hot Reload: Development efficiency

πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn package manager

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/jodiscars.git
    cd jodiscars
  2. Install dependencies

    npm install
  3. Environment Setup Create a .env file in the root directory:

    VITE_SUPABASE_URL=your_supabase_url
    VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
    VITE_FLUTTERWAVE_PUBLIC_KEY=your_flutterwave_public_key
    VITE_PAYSTACK_PUBLIC_KEY=your_paystack_public_key
    VITE_GEMINI_API_KEY=your_gemini_api_key
  4. Start development server

    npm run dev
  5. Build for production

    npm run build

Note: A vercel.json file is included in the root of the project to handle client-side routing on Vercel.

πŸ“± PWA Features

JodisCars is a Progressive Web App with the following capabilities:

  • Offline Support: Browse cached content without internet
  • App-like Experience: Install on mobile devices and desktop
  • Push Notifications: Real-time updates and notifications
  • Background Sync: Sync data when connection is restored

πŸ’³ Payment Configuration

Payment Gateway Setup

  1. Flutterwave

  2. Paystack

    • Sign up at Paystack
    • Obtain API keys from dashboard
  3. Cryptocurrency

    • Configure crypto wallet addresses
    • Set up payment verification webhooks

🎨 Customization

Theme Configuration

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        primary: '#1E40AF',    // Blue
        secondary: '#F59E0B',  // Amber
        accent: '#10B981',     // Emerald
      }
    }
  }
}

Admin Configuration

Access the admin panel at /admin to:

  • Update site settings
  • Manage payment gateways
  • Configure email settings
  • Customize pages and content
  • Monitor analytics

πŸ“Š Analytics & Monitoring

Supported Analytics

  • Google Analytics: Website traffic and user behavior
  • Vercel Analytics: Performance and user engagement
  • Custom Analytics: User activity logging and country tracking

Admin Dashboard Metrics

  • User registrations and activity
  • Car listing statistics
  • Payment transaction data
  • Popular search terms
  • Geographic user distribution

πŸ”§ Advanced Configuration

Email Configuration (SMTP)

emailSettings: {
  smtpHost: 'smtp.gmail.com',
  smtpPort: 587,
  smtpUser: '[email protected]',
  smtpPassword: 'your-app-password',
  fromEmail: '[email protected]',
  fromName: 'JodisCars'
}

AI Assistant Setup

  1. Get Gemini API key from Google AI Studio
  2. Configure in admin panel under AI Settings
  3. Train with custom responses for your business

πŸ›‘ Security Features

  • Input Validation: Comprehensive form validation
  • XSS Protection: Content sanitization
  • CSRF Protection: Request verification
  • Rate Limiting: API abuse prevention
  • Secure Headers: Security-focused HTTP headers
  • Data Encryption: Sensitive data protection

πŸ“‹ API Documentation

Car Endpoints

GET /api/cars - List all cars
GET /api/cars/:id - Get car details
POST /api/cars - Create new listing
PUT /api/cars/:id - Update car listing
DELETE /api/cars/:id - Delete car listing

User Endpoints

POST /api/auth/register - Register new user
POST /api/auth/login - User login
POST /api/auth/logout - User logout
GET /api/users/profile - Get user profile
PUT /api/users/profile - Update profile

Payment Endpoints

POST /api/payments/create - Create payment intent
POST /api/payments/confirm - Confirm payment
GET /api/payments/history - Payment history
POST /api/payments/refund - Process refund

πŸ”„ Expected Updates (Roadmap)

  • Enhanced AI Features: Advanced car recommendations
  • Mobile App: Native iOS and Android applications
  • Advanced Filters: VIN lookup and detailed specifications
  • Social Features: User profiles and car collections
  • Auction System: Live bidding for premium vehicles
  • Insurance Integration: Car insurance quotes and purchase
  • Financing Calculator: Loan calculations and pre-approval
  • Video Calls: Virtual car tours with sellers
  • Blockchain Integration: NFT certificates for premium cars
  • AI Image Analysis: Automatic damage detection
  • Multi-language Support: Internationalization
  • Advanced Analytics: Machine learning insights
  • Marketplace Expansion: Motorcycles, boats, and RVs
  • Enterprise Features: Fleet management tools
  • API Marketplace: Third-party integrations
  • Advanced Security: Biometric authentication

🀝 Contributing

We welcome contributions! Please read our contributing guidelines:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

Development Guidelines

  • Follow TypeScript best practices
  • Use conventional commit messages
  • Maintain 80%+ test coverage
  • Update documentation for new features

πŸ“ž Support

Contact Information

Support Channels

  • 24/7 AI Chat: Available on the platform
  • Email Support: Response within 24 hours
  • Phone Support: Business hours (9 AM - 6 PM WAT)
  • Community Forum: GitHub Discussions

πŸ“„ Legal

πŸ™ Acknowledgments

We gratefully acknowledge the contributions of:

Open Source Libraries

  • React Team: For the amazing React framework
  • Tailwind CSS: For the utility-first CSS framework
  • Supabase: For backend-as-a-service platform
  • Vite: For the lightning-fast build tool
  • TypeScript: For type-safe JavaScript development

UI/UX Inspiration

  • cars.com: Design inspiration and best practices
  • Tesla: Clean and modern automotive design
  • Airbnb: User experience and booking flows

Technology Partners

  • Google: Gemini AI and Analytics services
  • Vercel: Deployment and analytics platform
  • Pexels: High-quality stock photography
  • Heroicons: Beautiful SVG icons

Community Contributors

  • Early Beta Testers: For valuable feedback and bug reports
  • Translation Contributors: For internationalization support
  • Documentation Writers: For improving user guides
  • Security Researchers: for responsible disclosure of vulnerabilities

Special Thanks

  • Nigerian Tech Community: For continuous support and feedback
  • Automotive Industry Experts: For domain knowledge and insights
  • Payment Gateway Partners: For reliable financial services
  • Customer Support Team: For exceptional user service

Built with ❀️ by Jamachi Mauricennadi

JodisCars v1.2 - Revolutionizing the automotive marketplace experience