use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
class AuthServiceProvider extends ServiceProvider
{
/**
* Register any authentication / authorization services.
*/
public function boot(): void
{
$this->registerPolicies();
Gate::define('view-reports', function ($user) {
return $user->hasPermission('view-reports');
});
Gate::define('manage-users', function ($user) {
return $user->isAdmin();
});
}
}
class DeveloperController extends Controller
{
public function index(Request $request)
{
$developers = Developer::query()
->with(['skills', 'country', 'user'])
->certified()
->available()
->paginate(12);
return view('developers.index', compact('developers'));
}
public function show(Developer $developer)
{
$developer->load(['skills', 'certifications', 'portfolio']);
return view('developers.show', compact('developer'));
}
}
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
class Developer extends Model
{
protected $fillable = [
'name',
'title',
'bio',
'hourly_rate',
'availability_status',
];
public function skills(): BelongsToMany
{
return $this->belongsToMany(Skill::class);
}
public function scopeCertified($query)
{
return $query->whereNotNull('certified_at');
}
}
Verified developers you can hire with confidence
Search certified back- & front-end talent. Real badges, live availability, transparent rates.
0 developers found Searching...
View:
No developers found
Try adjusting your search or filters to find developers that match your criteria.