Logo Lanfrica

makebelief/donation-app

Domaine:

socioeconomicdigital infrastructure

Type de record:

software
Créateur:
mak
Hôte:
a web application using SvelteKit that allows well-wishers to anonymously donate to various social projects listed(No signup needed). The platform should also provide an administrative interface for tracking donations per project. Integrate Mpesa API for payments. # African Social Projects Donation Platform A production-ready web application built with SvelteKit, PostgreSQL, and Redis that enables secure donations to various social projects in Africa through M-Pesa integration. ## Features - Anonymous and authenticated donations to social projects - Secure M-Pesa integration for mobile payments - Admin dashboard with real-time analytics - Rate limiting and security measures - Caching with Redis - Comprehensive logging and monitoring - African-themed responsive UI - PostgreSQL database with migrations - Docker deployment support ## Prerequisites - Node.js (v18 or later) - PostgreSQL (v15 or later) - Redis (v7 or later) - Docker and Docker Compose (for containerized deployment) - M-Pesa Daraja API credentials ## Local Development Setup 1. Clone the repository: ```bash git clone cd donation-app ``` 2. Install dependencies: ```bash npm install ``` 3. Create a `.env` file in the root directory (see `.env.example` for required variables) 4. Start the development environment: ```bash # Start PostgreSQL and Redis using Docker docker-compose up -d db cache # Initialize the database npm run migrate:dev # Seed the database with sample data npm run seed ``` 4. Start the production server: ```bash npm run start ``` ## Contributing 1. Fork the repository 2. Create a feature branch 3. Commit your changes 4. Push to the branch 5. Create a Pull Request ## License This project is licensed under the MIT License - see the LICENSE file for details. ## Acknowledgments - SvelteKit for the framework - Prisma for database ORM - Tailwind CSS for styling - M-Pesa for payment integration