Laravel Basics challenges

Practice problem statements with input format, output format, constraints and solutions.

beginner

Laravel Introduction challenge

Build a small solution that uses Laravel Introduction in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Laravel Introduction']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core laravel introduction pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Laravel Introduction solution']); }
}
beginner

Installation challenge

Build a small solution that uses Installation in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Installation']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core installation pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Installation solution']); }
}
beginner

Directory Structure challenge

Build a small solution that uses Directory Structure in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Directory Structure']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core directory structure pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Directory Structure solution']); }
}
beginner

Routing Basics challenge

Build a small solution that uses Routing Basics in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Routing Basics']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core routing basics pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Routing Basics solution']); }
}
beginner

Route Parameters challenge

Build a small solution that uses Route Parameters in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

use App\Http\Controllers\OrderController;
Route::get('/orders/{id}', [OrderController::class, 'show'])->middleware('auth');

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core route parameters pattern before polishing the final output.

Solution

use App\Http\Controllers\OrderController;
Route::get('/orders/{id}', [OrderController::class, 'show'])->middleware('auth');
beginner

Blade Templating challenge

Build a small solution that uses Blade Templating in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Blade Templating']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core blade templating pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Blade Templating solution']); }
}
beginner

Blade Components challenge

Build a small solution that uses Blade Components in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Blade Components']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core blade components pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Blade Components solution']); }
}
beginner

Controllers challenge

Build a small solution that uses Controllers in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Controllers']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core controllers pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Controllers solution']); }
}
beginner

Request and Response challenge

Build a small solution that uses Request and Response in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Request and Response']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core request and response pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Request and Response solution']); }
}
beginner

Middleware challenge

Build a small solution that uses Middleware in Laravel Basics and handles one normal case plus one edge case.

Input format

Use a short text value, array, query, or sample object depending on the topic.

Output format

Print, render, or return the processed result in a readable format.

Constraints

  • Keep the solution under 60 lines.
  • Use descriptive names.
  • Do not depend on hidden external services.

Starter code

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Middleware']); }
}

Test cases

  • basic sample - valid processed result
  • empty or small sample - safe fallback result

Hint

Focus on the core middleware pattern before polishing the final output.

Solution

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class LessonController extends Controller {
  public function index() { return view('lessons.show', ['title' => 'Middleware solution']); }
}