🌐 Add full i18n system frontend + API (Story 1.3)
Nuxt i18n with lazy-loaded JSON files, localized routes, hreflang SEO tags, LanguageSwitcher component. Laravel SetLocale middleware, HasTranslations trait, API Resources and Controllers for projects/skills with Accept-Language support. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
26
api/app/Http/Controllers/Api/ProjectController.php
Normal file
26
api/app/Http/Controllers/Api/ProjectController.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Resources\ProjectResource;
|
||||
use App\Models\Project;
|
||||
|
||||
class ProjectController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
$projects = Project::with('skills')->ordered()->get();
|
||||
|
||||
return ProjectResource::collection($projects)
|
||||
->additional(['meta' => ['lang' => app()->getLocale()]]);
|
||||
}
|
||||
|
||||
public function show(string $slug)
|
||||
{
|
||||
$project = Project::with('skills')->where('slug', $slug)->firstOrFail();
|
||||
|
||||
return (new ProjectResource($project))
|
||||
->additional(['meta' => ['lang' => app()->getLocale()]]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user