SADA9A is a modern digital platform designed to revolutionize charitable giving and volunteering in Mauritania. The platform connects donors, charitable organizations, and volunteers through a transparent, efficient, and user-friendly system.
# SADA9A - Charitable Donations & Volunteering Platform
## 📖 About
SADA9A is a modern digital platform designed to revolutionize charitable giving and volunteering in Mauritania. The platform connects donors, charitable organizations, and volunteers through a transparent, efficient, and user-friendly system.
### Key Features
- 🎯 **Campaign Management**: Create, manage, and track charitable campaigns
- 💰 **Transparent Donations**: Real-time tracking of funds with complete transparency
- 🤝 **Volunteer Management**: Match volunteers with opportunities based on skills and availability
- 📊 **Analytics Dashboard**: Comprehensive insights for organizations and administrators
- 🔐 **Multi-role Authentication**: Separate interfaces for donors, organizations, and administrators
- 🌐 **Multi-language Support**: Arabic, French, and English
- 📱 **Responsive Design**: Optimized for desktop, tablet, and mobile devices
- 🔴 **Facebook Live Integration**: Stream activities directly to supporters
- 🤖 **AI-Powered Recommendations**: Intelligent campaign suggestions using multilingual sentence transformers
## 🏗️ Architecture
SADA9A follows a modern microservices architecture:
- **Backend**: Django 4.2 + Django REST Framework 3.16.0
- **AI Microservice**: FastAPI 0.104.1 with Sentence Transformers
- **Frontend**: React 19.0 with Vite 6.3.1
- **Database**: PostgreSQL 15+ (Supabase)
- **Cache & WebSockets**: Redis 7+ (Upstash) with Django Channels
- **Storage**: Supabase Storage
- **Deployment**: Google Cloud Run + Vercel
- **Containerization**: Docker & Docker Compose
## 🚀 Getting Started
### Prerequisites
- **Python 3.12**
- **Node.js 18+**
- **PostgreSQL 15+** (or Supabase account)
- **Redis 7+** (or Upstash account)
- **Pipenv** (for Python package management)
- **Docker & Docker Compose** (optional, for containerized setup)
### Installation Methods
Choose one of the following installation methods:
#### Option 1: Docker Setup (Recommended for Quick Start)
The eas …