✨ Features
👤 User Management
Registration, authentication, and account management
📧 Email Support
Resend integration for password resets and verification
🖼️ Image Management
Upload, manage, and retrieve images with metadata
🔒 Data Integrity
Soft deletes and comprehensive error handling
🛠️ Tech Stack
| Component | Technology |
|---|---|
| Framework | Laravel 10.x |
| Language | PHP 8.1+ |
| Database | MySQL 5.7+ |
| Email Service | Resend |
| Authentication | Session-based (Sanctum ready) |
📦 Installation
Prerequisites
- PHP 8.1 or higher
- Composer
- MySQL 5.7 or higher
- Node.js and npm (for frontend assets)
Setup Steps
- Clone the repository:
git clone https://github.com/andrea-mpulila/overlay_backend.git cd winga - Install dependencies:
composer install - Copy environment configuration:
cp .env.example .env - Generate application key:
php artisan key:generate - Configure database in .env:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=winga_db DB_USERNAME=root DB_PASSWORD=your_password - Configure Resend email service:
MAIL_MAILER=smtp MAIL_HOST=smtp.resend.com MAIL_PORT=465 MAIL_USERNAME=resend MAIL_PASSWORD=your_resend_api_key MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=onboarding@resend.dev MAIL_FROM_NAME=Winga - Run database migrations:
php artisan migrate - Start the development server:
php artisan serve
📚 API Documentation
Complete API documentation is available in API_INTEGRATION_MANUAL.md. Our RESTful API provides endpoints for user authentication, image management, and file operations with comprehensive error handling and validation.
🔐 Security Considerations
- Always use HTTPS in production
- Keep Laravel and dependencies updated
- Use strong database passwords
- Protect your Resend API key
- Enable CORS only for trusted domains
- Implement rate limiting for production
- Use environment variables for sensitive data