Full-Stack Developer Task
Full-Stack Developer Task
Note: The same interface should serve for both project submission (by users) and
project approval (by admins), with functionality adapting dynamically based on the
authenticated user's role.
📋 Requirements
1. Frontend (Bootstrap or Vue.js or React)
● Login/Register Pages
● Dashboard
2. Backend (Laravel)
● Schema Design:
○ Relationships:
● Stored Procedure:
● Approval Emails:
■ A project is submitted.
■ A project is approved or rejected (include a custom template with the
reason).
● RESTful Routes:
● Response:
● Roles:
○ $this->authorize('approve', $project);
● Real-time Notification:
● Frontend Improvements:
● Code Structure
Follows clean architecture with MVC and SOLID principles to ensure maintainability
and scalability.
● Performance Optimization
Uses queues, efficient SQL queries, and optimized frontend components to deliver a
responsive user experience.
📦 Submission Guidelines
1. Packaging Your Code
Upload the files to a public GitHub repository and share the repository link.:
○ Create a demo video showcasing how your application works from a user’s
perspective.