Laravel Raffle Management System Development

Job ID: 39026514

Budget: $30 – $250 USD

Overview
This project involves the development of a Laravel-based system for managing online raffles. The code must follow high-quality coding standards and will be subjected to static code analysis tools to ensure maintainability, security, and efficiency. The system will dynamically fetch all content from REST APIs and be fully responsive, functional, and customizable.

Functional Objectives (Each REQ is a milestone, each milestone will release until the previous milestone will be tested and accepted)

REQ 1, REQ 2, REQ 3 AND REQ 4 is the same Laravel project.
REQ 5 is a different static project HTML 5 responsive without Laravel.


REQ 1) Landing Page Functionality Create a dynamic landing page similar to https://demo.sistemaderifas.net/home.
The following content must be dynamically fetched from a REST API in JSON format:
Colors (theme customization)
Image URLs
Favicon
Social media links
Bank account details
Texts (headings, descriptions, etc.)
List of raffles
All fetched content must be displayed dynamically based on the API response.
Raffle Page Functionality

REQ 2) Develop a dynamic raffle page similar to https://demo.sistemaderifas.net/home/sorteo/1111 or https://www.lottosorteos.com/s51-lista

Fetch raffle details from a specific REST API endpoint.
Allow users to reserve tickets by sending their chosen ticket numbers via WhatsApp.
Lucky machine feature, check the samples in the URLs MAQUINITA DE LA SUERTE is a random select for tickets.
Validate ticket availability with an additional REST API before finalizing the reservation process.
Menu and Footer

Dynamically fetch and render the menu and footer sections using HTML content retrieved from REST APIs.
Configuration and Customization

REQ 3) Search ticket number: https://www.lottosorteos.com/s51-boleto?number=003

REQ 4) Search tickets by ticket number or phone number https://www.lottosorteos.com/s51-verificador?number=003

REQ 5) Static sale responsive product landing page https://www.sistemaderifas.net/

Use the .env file in the Laravel project to include parameters that will be sent to the APIs. These parameters will allow the API to return content customized for different sites.
Ensure that the system can support multiple domains with distinct configurations for testing (e.g., 2-3 domains with unique settings).
Non-Functional Objectives
Responsiveness

Ensure the system is fully responsive and provides an optimal user experience on desktops, tablets, and mobile devices.
Performance

Optimize API calls to ensure fast loading times and smooth performance.
Customization

Enable seamless customization of site content based on the API responses for different configurations or domains.
Compatibility

Ensure compatibility with PHP 8.2 and test the system on an NGINX server running PHP 8.2.
Attractiveness

Use modern and visually appealing design principles to create an engaging and professional look for the system.
Code Quality

Write clean, readable, and maintainable code following Laravel best practices.
Ensure the code adheres to PSR standards (PSR-1, PSR-2, PSR-4).
Use tools like PHP CodeSniffer, PHPStan, or SonarQube to analyze code quality.
Scalability

Build the system with scalability in mind, so it can handle multiple domains and configurations without compromising performance.
API Integration

Use best practices for consuming REST APIs, including error handling and retry mechanisms, to ensure the system is robust and fault-tolerant.
Testing and Deployment
Testing

Conduct thorough functional and non-functional testing.
Test the system with 2-3 different domains hosted on the NGINX server, ensuring proper handling of unique configurations.
Validate API integrations and ensure smooth rendering of content from API responses.
Deployment

Deploy the system on an NGINX server running PHP 8.2.
Ensure the .env configuration works seamlessly with different site settings.
By adhering to these objectives and emphasizing code quality, the system will not only meet functional requirements but also ensure long-term maintainability and scalability.
Related categories: PHP Laravel