Logo Lanfrica

bernotieno/Moyo-Mzuri

Domaine:

socioeconomic

Type de record:

software
Créateur:
ber
Hôte:
Moyo Mzuri (meaning "Good Heart" in Swahili) is a modern donation platform built with SvelteKit that enables communities to support meaningful social projects through secure M-Pesa payments. # Moyo Mzuri - Social Projects Donation Platform **Moyo Mzuri** (meaning "Good Heart" in Swahili) is a modern donation platform built with SvelteKit that enables communities to support meaningful social projects through secure M-Pesa payments. ## 🌟 Features ### Public Features - **Project Discovery**: Browse active social projects with detailed descriptions and funding goals - **Secure Donations**: Make donations using M-Pesa STK Push integration - **Real-time Updates**: Live tracking of donation progress and project funding status - **Responsive Design**: Mobile-first design with dark/light theme support - **Progress Tracking**: Visual progress bars showing funding milestones ### Admin Dashboard - **Project Management**: Create, edit, and manage social projects - **Donation Tracking**: Monitor all donations with detailed transaction history - **Analytics**: View donation statistics and project performance - **Secure Access**: Password-protected admin interface - **Real-time Data**: Live updates of donation status and project totals ### Technical Features - **M-Pesa Integration**: Full STK Push implementation for seamless payments - **Database Management**: SQLite with Drizzle ORM for reliable data storage - **File Upload**: Image upload functionality for project photos - **API-First**: RESTful API design for easy integration - **Modern Stack**: Built with SvelteKit 2.0, TailwindCSS 4.0, and modern JavaScript ## 🏗️ Architecture ### Technology Stack - **Frontend**: SvelteKit 2.0 with Svelte 5 - **Styling**: TailwindCSS 4.0 with custom components - **Database**: SQLite with Drizzle ORM - **Payment**: M-Pesa Daraja API integration - **Deployment**: Node.js compatible (Vercel, Netlify, etc.) ### Database Schema #### Projects Table - `id` - Primary key (auto-increment) - `title` - Project name - `description` - Detailed project description - `targetAmount` - Funding goal amount - `totalRaised` - Current amount raised - `imageUrl` - Project image URL - `isActive` …