Skip to content

FeexSystems/kappaxchangefin

Repository files navigation

KappaXchange - Nigerian Fintech App

Overview

KappaXchange is a comprehensive Nigerian fintech application built with React, TypeScript, and Supabase. It provides financial services including money transfers, bill payments, cryptocurrency trading, and AI-powered financial assistance.

Features

  • User Authentication - Secure email/password authentication with Supabase Auth
  • Multi-Currency Wallets - Support for NGN and USD wallets
  • Money Transfers - Bank-to-bank transfers with Nigerian banks
  • Bill Payments - Electricity, internet, TV, water, and education bill payments
  • SabiBot AI Assistant - Intelligent financial assistant for user queries
  • Real-time Notifications - Live updates for transactions and system events
  • Market Signals - Trading signals for currency and cryptocurrency markets
  • Transaction History - Comprehensive transaction tracking and history

Tech Stack

  • Frontend: React 18, TypeScript, Tailwind CSS
  • Backend: Supabase (PostgreSQL, Auth, Edge Functions)
  • Icons: Lucide React
  • Forms: React Hook Form
  • Validation: Zod
  • Build Tool: Vite

Setup Instructions

1. Environment Variables

Create a .env file in the project root:

VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key

2. Supabase Setup

  1. Create a new project at supabase.com
  2. Run the migration files in order:
    • supabase/migrations/20250614224844_rustic_lake.sql
    • supabase/migrations/20250614224921_late_queen.sql
    • supabase/migrations/20250614224946_raspy_palace.sql
  3. Deploy the Edge Functions:
    • supabase/functions/process-payment/
    • supabase/functions/sabibot-chat/
    • supabase/functions/verify-bank-account/
    • supabase/functions/update-crypto-prices/

3. Development

# Install dependencies
npm install

# Start development server
npm run dev

4. Demo Credentials

Project Structure

src/
├── components/
│   ├── auth/           # Authentication components
│   ├── dashboard/      # Dashboard widgets
│   ├── layout/         # Layout components
│   ├── payments/       # Payment forms
│   ├── sabibot/        # AI assistant
│   ├── transfers/      # Transfer forms
│   └── ui/             # Reusable UI components
├── hooks/              # Custom React hooks
├── lib/                # Utility libraries
├── pages/              # Page components
├── types/              # TypeScript type definitions
└── config/             # Configuration files

Key Features

Authentication

  • Email/password authentication with Supabase Auth
  • Automatic profile creation on signup
  • JWT token-based session management
  • Row Level Security (RLS) for data protection

Database Schema

  • profiles - User profile information
  • wallets - Multi-currency wallet balances
  • transactions - All financial transactions
  • bills - User bills and payment schedules
  • bank_accounts - Linked bank accounts
  • notifications - System and user notifications
  • sabibot_conversations - AI chat conversations
  • market_signals - Trading and market analysis

Real-time Features

  • Live transaction updates
  • Real-time notifications
  • SabiBot message streaming
  • Bill payment reminders

Security

  • Row Level Security (RLS) policies
  • Input validation and sanitization
  • Secure API endpoints
  • Audit trails for transactions

API Documentation

Comprehensive API documentation is available in docs/API_REFERENCE.md

Contributing

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

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors