Index: app/Http/Controllers/StudyProgramController.php
===================================================================
--- app/Http/Controllers/StudyProgramController.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ app/Http/Controllers/StudyProgramController.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,157 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Models\StudyProgram;
+use App\Models\Subject;
+use Illuminate\Http\Request;
+
+class StudyProgramController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     */
+    public function index(Request $request)
+    {
+        $query = StudyProgram::query();
+
+        if ($request->filled('search')) {
+            $search = $request->input('search');
+            $query->where('name_mk', 'like', "%{$search}%")
+                  ->orWhere('name_en', 'like', "%{$search}%")
+                  ->orWhere('code', 'like', "%{$search}%");
+        }
+
+        $studyPrograms = $query->paginate(10);
+
+        return view('admin.study-programs.index', compact('studyPrograms'));
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     */
+    public function create()
+    {
+        $subjects = Subject::orderBy('year')->orderBy('code')->get();
+        return view('admin.study-programs.create', compact('subjects'));
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     */
+    public function store(Request $request)
+    {
+        $validated = $request->validate([
+            'name_mk' => 'required|string|max:255',
+            'name_en' => 'required|string|max:255',
+            'code' => 'required|string|unique:study_programs,code|max:50',
+            'description_mk' => 'nullable|string',
+            'description_en' => 'nullable|string',
+            'duration_years' => 'required|integer|between:1,6',
+            'cycle' => 'required|in:first,second',
+            'subjects' => 'nullable|array',
+            'subjects.*' => 'exists:subjects,id',
+            'subject_types.*' => 'in:mandatory,elective',
+            'subject_years.*' => 'integer|between:1,6',
+            'subject_semesters.*' => 'in:winter,summer',
+        ]);
+
+        $studyProgram = StudyProgram::create($validated);
+
+        // Attach subjects with their types, years, and semesters
+        if ($request->filled('subjects')) {
+            $subjectData = [];
+            foreach ($request->input('subjects') as $index => $subjectId) {
+                $type = $request->input("subject_types.{$index}", 'elective');
+                $year = $request->input("subject_years.{$index}", 1);
+                $semester = $request->input("subject_semesters.{$index}", 'winter');
+                $subjectData[$subjectId] = [
+                    'type' => $type,
+                    'year' => $year,
+                    'semester_type' => $semester,
+                    'order' => $index + 1
+                ];
+            }
+            $studyProgram->subjects()->attach($subjectData);
+        }
+
+        return redirect()->route('study-programs.show', $studyProgram)->with('success', 'Study program created successfully');
+    }
+
+    /**
+     * Display the specified resource.
+     */
+    public function show(StudyProgram $studyProgram)
+    {
+        $studyProgram->load('subjects');
+        $mandatorySubjects = $studyProgram->getMandatorySubjects();
+        $electiveSubjects = $studyProgram->getElectiveSubjects();
+
+        return view('admin.study-programs.show', compact('studyProgram', 'mandatorySubjects', 'electiveSubjects'));
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     */
+    public function edit(StudyProgram $studyProgram)
+    {
+        $studyProgram->load('subjects');
+        $allSubjects = Subject::orderBy('year')->orderBy('code')->get();
+        return view('admin.study-programs.edit', compact('studyProgram', 'allSubjects'));
+    }
+
+    /**
+     * Update the specified resource in storage.
+     */
+    public function update(Request $request, StudyProgram $studyProgram)
+    {
+        $validated = $request->validate([
+            'name_mk' => 'required|string|max:255',
+            'name_en' => 'required|string|max:255',
+            'code' => 'required|string|max:50|unique:study_programs,code,' . $studyProgram->id,
+            'description_mk' => 'nullable|string',
+            'description_en' => 'nullable|string',
+            'duration_years' => 'required|integer|between:1,6',
+            'cycle' => 'required|in:first,second',
+            'subjects' => 'nullable|array',
+            'subjects.*' => 'exists:subjects,id',
+            'subject_types.*' => 'in:mandatory,elective',
+            'subject_years.*' => 'integer|between:1,6',
+            'subject_semesters.*' => 'in:winter,summer',
+        ]);
+
+        $studyProgram->update($validated);
+
+        // Sync subjects with their types, years, and semesters
+        if ($request->filled('subjects')) {
+            $subjectData = [];
+            foreach ($request->input('subjects') as $index => $subjectId) {
+                $type = $request->input("subject_types.{$index}", 'elective');
+                $year = $request->input("subject_years.{$index}", 1);
+                $semester = $request->input("subject_semesters.{$index}", 'winter');
+                $subjectData[$subjectId] = [
+                    'type' => $type,
+                    'year' => $year,
+                    'semester_type' => $semester,
+                    'order' => $index + 1
+                ];
+            }
+            $studyProgram->subjects()->sync($subjectData);
+        } else {
+            $studyProgram->subjects()->sync([]);
+        }
+
+        return redirect()->route('study-programs.show', $studyProgram)->with('success', 'Study program updated successfully');
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     */
+    public function destroy(StudyProgram $studyProgram)
+    {
+        $studyProgram->subjects()->detach();
+        $studyProgram->delete();
+
+        return redirect()->route('study-programs.index')->with('success', 'Study program deleted successfully');
+    }
+}
Index: app/Http/Controllers/SubjectController.php
===================================================================
--- app/Http/Controllers/SubjectController.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ app/Http/Controllers/SubjectController.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -11,7 +11,17 @@
      * Display a listing of the resource.
      */
-    public function index()
+    public function index(Request $request)
     {
-        $subjects = Subject::orderBy('year')->orderBy('semester_type')->orderBy('code')->paginate(20);
+        $query = Subject::query();
+
+        if ($request->filled('search')) {
+            $search = $request->input('search');
+            $query->where('name', 'like', "%{$search}%")
+                  ->orWhere('name_mk', 'like', "%{$search}%")
+                  ->orWhere('code', 'like', "%{$search}%");
+        }
+
+        $subjects = $query->orderBy('year')->orderBy('semester_type')->orderBy('code')->paginate(20);
+
         return view('admin.subjects.index', compact('subjects'));
     }
@@ -62,12 +72,11 @@
      * Show the form for editing the specified resource.
      */
-    public function edit(Subject $subject)
+public function edit(Subject $subject)
     {
-        $prerequisites = Subject::whereNotIn('id', [$subject->id])->get();
-        return view('admin.subjects.edit', compact('subject', 'prerequisites'));
-    }
+        $prerequisites = Subject::whereNotIn('id', [$subject->id])->orderBy('year')->orderBy('code')->get();
+        $careerPaths = \App\Models\CareerPath::all();
+        return view('admin.subjects.edit', compact('subject', 'prerequisites', 'careerPaths'));    }
 
-    /**
-     * Update the specified resource in storage.
+    /**     * Update the specified resource in storage.
      */
     public function update(Request $request, Subject $subject)
@@ -89,10 +98,14 @@
             'prerequisites' => 'nullable|array',
             'prerequisites.*' => 'exists:subjects,id',
+            'career_paths' => 'nullable|array',
+            'career_paths.*' => 'exists:career_paths,id',
         ]);
 
         $prerequisiteIds = $request->input('prerequisites', []);
+        $careerPathIds = $request->input('career_paths', []);
 
         $subject->update($validated);
         $subject->prerequisites()->sync($prerequisiteIds);
+        $subject->careerPaths()->sync($careerPathIds);
 
         return redirect()->route('subjects.index')->with('success', 'Subject updated successfully');
Index: app/Models/Subject.php
===================================================================
--- app/Models/Subject.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ app/Models/Subject.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -57,4 +57,9 @@
     }
 
+    public function careerPaths(): BelongsToMany
+    {
+        return $this->belongsToMany(CareerPath::class, 'career_path_subject');
+    }
+
     public function getDisplayName(): string
     {
Index: database/migrations/2025_12_29_add_year_semester_to_study_program_subject.php
===================================================================
--- database/migrations/2025_12_29_add_year_semester_to_study_program_subject.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ database/migrations/2025_12_29_add_year_semester_to_study_program_subject.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,29 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+return new class extends Migration
+{
+    /**
+     * Run the migrations.
+     */
+    public function up(): void
+    {
+        Schema::table('study_program_subject', function (Blueprint $table) {
+            $table->integer('year')->default(1)->after('type')->comment('Year level of the subject in this program');
+            $table->enum('semester_type', ['winter', 'summer'])->default('winter')->after('year')->comment('Semester type for this subject in this program');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     */
+    public function down(): void
+    {
+        Schema::table('study_program_subject', function (Blueprint $table) {
+            $table->dropColumn(['year', 'semester_type']);
+        });
+    }
+};
Index: resources/views/admin/study-programs/create.blade.php
===================================================================
--- resources/views/admin/study-programs/create.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ resources/views/admin/study-programs/create.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,170 @@
+<x-app-layout>
+<div class="py-12">
+    <div class="max-w-4xl mx-auto sm:px-6 lg:px-8">
+        <div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
+            <div class="p-6 bg-white border-b border-gray-200">
+                <h2 class="font-bold text-2xl text-gray-900 mb-6">Креирај нова студиска програма</h2>
+
+                <form method="POST" action="{{ route('study-programs.store') }}" class="space-y-6">
+                    @csrf
+
+                    <!-- Names -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-2">
+                        <div>
+                            <label for="name_mk" class="block text-sm font-bold text-gray-900 mb-2">Име (Македонски) <span class="text-red-500">*</span></label>
+                            <input type="text" id="name_mk" name="name_mk" value="{{ old('name_mk') }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('name_mk') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="name_en" class="block text-sm font-bold text-gray-900 mb-2">Име (Англиски) <span class="text-red-500">*</span></label>
+                            <input type="text" id="name_en" name="name_en" value="{{ old('name_en') }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('name_en') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Code and Duration -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-3">
+                        <div>
+                            <label for="code" class="block text-sm font-bold text-gray-900 mb-2">Код <span class="text-red-500">*</span></label>
+                            <input type="text" id="code" name="code" value="{{ old('code') }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('code') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="duration_years" class="block text-sm font-bold text-gray-900 mb-2">Трајање (години) <span class="text-red-500">*</span></label>
+                            <select id="duration_years" name="duration_years" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                                <option value="">-- Изберете --</option>
+                                <option value="1" {{ old('duration_years') == '1' ? 'selected' : '' }}>1 година</option>
+                                <option value="2" {{ old('duration_years') == '2' ? 'selected' : '' }}>2 години</option>
+                                <option value="3" {{ old('duration_years') == '3' ? 'selected' : '' }}>3 години</option>
+                                <option value="4" {{ old('duration_years') == '4' ? 'selected' : '' }}>4 години</option>
+                                <option value="5" {{ old('duration_years') == '5' ? 'selected' : '' }}>5 години</option>
+                                <option value="6" {{ old('duration_years') == '6' ? 'selected' : '' }}>6 години</option>
+                            </select>
+                            @error('duration_years') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="cycle" class="block text-sm font-bold text-gray-900 mb-2">Циклус <span class="text-red-500">*</span></label>
+                            <select id="cycle" name="cycle" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                                <option value="">-- Изберете --</option>
+                                <option value="first" {{ old('cycle') == 'first' ? 'selected' : '' }}>Прв циклус</option>
+                                <option value="second" {{ old('cycle') == 'second' ? 'selected' : '' }}>Втор циклус</option>
+                            </select>
+                            @error('cycle') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Descriptions -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-2">
+                        <div>
+                            <label for="description_mk" class="block text-sm font-bold text-gray-900 mb-2">Опис (Македонски)</label>
+                            <textarea id="description_mk" name="description_mk" rows="3" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">{{ old('description_mk') }}</textarea>
+                            @error('description_mk') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="description_en" class="block text-sm font-bold text-gray-900 mb-2">Опис (Англиски)</label>
+                            <textarea id="description_en" name="description_en" rows="3" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">{{ old('description_en') }}</textarea>
+                            @error('description_en') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Subjects -->
+                    <div>
+                        <label class="block text-sm font-bold text-gray-900 mb-2">Предмети</label>
+                        <div id="subjectsContainer" class="space-y-2">
+                            <div class="grid grid-cols-12 gap-2 items-end">
+                                <div class="col-span-5">
+                                    <select class="subjectSelect w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subjects[]" data-index="0">
+                                        <option value="">-- Изберете предмет --</option>
+                                        @foreach($subjects as $subject)
+                                            <option value="{{ $subject->id }}">{{ $subject->code }} - {{ $subject->name }}</option>
+                                        @endforeach
+                                    </select>
+                                </div>
+                                <div class="col-span-2">
+                                    <select class="subjectType w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_types[0]">
+                                        <option value="mandatory">Задолж.</option>
+                                        <option value="elective">Изборен</option>
+                                    </select>
+                                </div>
+                                <div class="col-span-2">
+                                    <select class="subjectYear w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_years[0]">
+                                        <option value="1">Година 1</option>
+                                        <option value="2">Година 2</option>
+                                        <option value="3">Година 3</option>
+                                        <option value="4">Година 4</option>
+                                        <option value="5">Година 5</option>
+                                        <option value="6">Година 6</option>
+                                    </select>
+                                </div>
+                                <div class="col-span-2">
+                                    <select class="subjectSemester w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_semesters[0]">
+                                        <option value="winter">Зимски</option>
+                                        <option value="summer">Летен</option>
+                                    </select>
+                                </div>
+                                <button type="button" onclick="removeSubject(this)" class="col-span-1 px-3 py-2 bg-red-100 text-red-700 rounded text-sm font-semibold hover:bg-red-200">Избриши</button>
+                            </div>
+                        </div>
+                        <button type="button" onclick="addSubject()" class="mt-3 px-4 py-2 bg-green-100 text-green-700 rounded text-sm font-semibold hover:bg-green-200">+ Додади предмет</button>
+                    </div>
+
+                    <!-- Buttons -->
+                    <div class="flex justify-between pt-6 border-t">
+                        <a href="{{ route('study-programs.index') }}" class="px-6 py-2 text-gray-700 bg-gray-100 rounded-md hover:bg-gray-200">Откажи</a>
+                        <button type="submit" class="px-6 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700">Креирај програма</button>
+                    </div>
+                </form>
+            </div>
+        </div>
+    </div>
+</div>
+
+<script>
+    let subjectCount = 1;
+
+    function addSubject() {
+        const container = document.getElementById('subjectsContainer');
+        const div = document.createElement('div');
+        div.className = 'grid grid-cols-12 gap-2 items-end';
+        div.innerHTML = `
+            <div class="col-span-5">
+                <select class="subjectSelect w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subjects[]" data-index="${subjectCount}">
+                    <option value="">-- Изберете предмет --</option>
+                    @foreach($subjects as $subject)
+                        <option value="{{ $subject->id }}">{{ $subject->code }} - {{ $subject->name }}</option>
+                    @endforeach
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectType w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_types[${subjectCount}]">
+                    <option value="mandatory">Задолж.</option>
+                    <option value="elective">Изборен</option>
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectYear w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_years[${subjectCount}]">
+                    <option value="1">Година 1</option>
+                    <option value="2">Година 2</option>
+                    <option value="3">Година 3</option>
+                    <option value="4">Година 4</option>
+                    <option value="5">Година 5</option>
+                    <option value="6">Година 6</option>
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectSemester w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_semesters[${subjectCount}]">
+                    <option value="winter">Зимски</option>
+                    <option value="summer">Летен</option>
+                </select>
+            </div>
+            <button type="button" onclick="removeSubject(this)" class="col-span-1 px-3 py-2 bg-red-100 text-red-700 rounded text-sm font-semibold hover:bg-red-200">Избриши</button>
+        `;
+        container.appendChild(div);
+        subjectCount++;
+    }
+
+    function removeSubject(button) {
+        button.parentElement.remove();
+    }
+</script>
+</x-app-layout>
Index: resources/views/admin/study-programs/edit.blade.php
===================================================================
--- resources/views/admin/study-programs/edit.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ resources/views/admin/study-programs/edit.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,207 @@
+<x-app-layout>
+<div class="py-12">
+    <div class="max-w-4xl mx-auto sm:px-6 lg:px-8">
+        <div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
+            <div class="p-6 bg-white border-b border-gray-200">
+                <h2 class="font-bold text-2xl text-gray-900 mb-6">Уреди студиска програма</h2>
+
+                <form method="POST" action="{{ route('study-programs.update', $studyProgram) }}" class="space-y-6">
+                    @csrf
+                    @method('PUT')
+
+                    <!-- Names -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-2">
+                        <div>
+                            <label for="name_mk" class="block text-sm font-bold text-gray-900 mb-2">Име (Македонски) <span class="text-red-500">*</span></label>
+                            <input type="text" id="name_mk" name="name_mk" value="{{ old('name_mk', $studyProgram->name_mk) }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('name_mk') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="name_en" class="block text-sm font-bold text-gray-900 mb-2">Име (Англиски) <span class="text-red-500">*</span></label>
+                            <input type="text" id="name_en" name="name_en" value="{{ old('name_en', $studyProgram->name_en) }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('name_en') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Code and Duration -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-3">
+                        <div>
+                            <label for="code" class="block text-sm font-bold text-gray-900 mb-2">Код <span class="text-red-500">*</span></label>
+                            <input type="text" id="code" name="code" value="{{ old('code', $studyProgram->code) }}" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                            @error('code') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="duration_years" class="block text-sm font-bold text-gray-900 mb-2">Времетраење (години) <span class="text-red-500">*</span></label>
+                            <select id="duration_years" name="duration_years" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                                <option value="">-- Изберете --</option>
+                                <option value="1" {{ old('duration_years', $studyProgram->duration_years) == '1' ? 'selected' : '' }}>1 година</option>
+                                <option value="2" {{ old('duration_years', $studyProgram->duration_years) == '2' ? 'selected' : '' }}>2 години</option>
+                                <option value="3" {{ old('duration_years', $studyProgram->duration_years) == '3' ? 'selected' : '' }}>3 години</option>
+                                <option value="4" {{ old('duration_years', $studyProgram->duration_years) == '4' ? 'selected' : '' }}>4 години</option>
+                                <option value="5" {{ old('duration_years', $studyProgram->duration_years) == '5' ? 'selected' : '' }}>5 години</option>
+                                <option value="6" {{ old('duration_years', $studyProgram->duration_years) == '6' ? 'selected' : '' }}>6 години</option>
+                            </select>
+                            @error('duration_years') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="cycle" class="block text-sm font-bold text-gray-900 mb-2">Циклус <span class="text-red-500">*</span></label>
+                            <select id="cycle" name="cycle" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" required>
+                                <option value="">-- Изберете --</option>
+                                <option value="first" {{ old('cycle', $studyProgram->cycle) == 'first' ? 'selected' : '' }}>Прв циклус</option>
+                                <option value="second" {{ old('cycle', $studyProgram->cycle) == 'second' ? 'selected' : '' }}>Втор циклус</option>
+                            </select>
+                            @error('cycle') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Descriptions -->
+                    <div class="grid grid-cols-1 gap-6 md:grid-cols-2">
+                        <div>
+                            <label for="description_mk" class="block text-sm font-bold text-gray-900 mb-2">Опис (Македонски)</label>
+                            <textarea id="description_mk" name="description_mk" rows="3" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">{{ old('description_mk', $studyProgram->description_mk) }}</textarea>
+                            @error('description_mk') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                        <div>
+                            <label for="description_en" class="block text-sm font-bold text-gray-900 mb-2">Опис (Англиски)</label>
+                            <textarea id="description_en" name="description_en" rows="3" class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">{{ old('description_en', $studyProgram->description_en) }}</textarea>
+                            @error('description_en') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                        </div>
+                    </div>
+
+                    <!-- Subjects -->
+                    <div>
+                        <label class="block text-sm font-bold text-gray-900 mb-2">Предмети</label>
+                        <div id="subjectsContainer" class="space-y-2">
+                            @forelse($studyProgram->subjects as $index => $subject)
+                                <div class="grid grid-cols-12 gap-2 items-end">
+                                    <div class="col-span-5">
+                                        <select class="subjectSelect w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subjects[]" data-index="{{ $index }}">
+                                            <option value="">-- Изберете предмет --</option>
+                                            @foreach($allSubjects as $s)
+                                                <option value="{{ $s->id }}" {{ $s->id == $subject->id ? 'selected' : '' }}>{{ $s->code }} - {{ $s->name }}</option>
+                                            @endforeach
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectType w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_types[{{ $index }}]">
+                                            <option value="mandatory" {{ $subject->pivot->type === 'mandatory' ? 'selected' : '' }}>Задолж.</option>
+                                            <option value="elective" {{ $subject->pivot->type === 'elective' ? 'selected' : '' }}>Изборен</option>
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectYear w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_years[{{ $index }}]">
+                                            <option value="1" {{ $subject->pivot->year == 1 ? 'selected' : '' }}>Година 1</option>
+                                            <option value="2" {{ $subject->pivot->year == 2 ? 'selected' : '' }}>Година 2</option>
+                                            <option value="3" {{ $subject->pivot->year == 3 ? 'selected' : '' }}>Година 3</option>
+                                            <option value="4" {{ $subject->pivot->year == 4 ? 'selected' : '' }}>Година 4</option>
+                                            <option value="5" {{ $subject->pivot->year == 5 ? 'selected' : '' }}>Година 5</option>
+                                            <option value="6" {{ $subject->pivot->year == 6 ? 'selected' : '' }}>Година 6</option>
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectSemester w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_semesters[{{ $index }}]">
+                                            <option value="winter" {{ $subject->pivot->semester_type === 'winter' ? 'selected' : '' }}>Зимски</option>
+                                            <option value="summer" {{ $subject->pivot->semester_type === 'summer' ? 'selected' : '' }}>Летен</option>
+                                        </select>
+                                    </div>
+                                    <button type="button" onclick="removeSubject(this)" class="col-span-1 px-3 py-2 bg-red-100 text-red-700 rounded text-sm font-semibold hover:bg-red-200">Избриши</button>
+                                </div>
+                            @empty
+                                <div class="grid grid-cols-12 gap-2 items-end">
+                                    <div class="col-span-5">
+                                        <select class="subjectSelect w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subjects[]" data-index="0">
+                                            <option value="">-- Изберете предмет --</option>
+                                            @foreach($allSubjects as $subject)
+                                                <option value="{{ $subject->id }}">{{ $subject->code }} - {{ $subject->name }}</option>
+                                            @endforeach
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectType w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_types[0]">
+                                            <option value="mandatory">Задолж.</option>
+                                            <option value="elective">Изборен</option>
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectYear w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_years[0]">
+                                            <option value="1">Година 1</option>
+                                            <option value="2">Година 2</option>
+                                            <option value="3">Година 3</option>
+                                            <option value="4">Година 4</option>
+                                            <option value="5">Година 5</option>
+                                            <option value="6">Година 6</option>
+                                        </select>
+                                    </div>
+                                    <div class="col-span-2">
+                                        <select class="subjectSemester w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_semesters[0]">
+                                            <option value="winter">Зимски</option>
+                                            <option value="summer">Летен</option>
+                                        </select>
+                                    </div>
+                                    <button type="button" onclick="removeSubject(this)" class="col-span-1 px-3 py-2 bg-red-100 text-red-700 rounded text-sm font-semibold hover:bg-red-200">Избриши</button>
+                                </div>
+                            @endforelse
+                        </div>
+                        <button type="button" onclick="addSubject()" class="mt-3 px-4 py-2 bg-green-100 text-green-700 rounded text-sm font-semibold hover:bg-green-200">+ Додади предмет</button>
+                    </div>
+
+                    <!-- Buttons -->
+                    <div class="flex justify-between pt-6 border-t">
+                        <a href="{{ route('study-programs.index') }}" class="px-6 py-2 text-gray-700 bg-gray-100 rounded-md hover:bg-gray-200">Откажи</a>
+                        <button type="submit" class="px-6 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700">Ажурирај програма</button>
+                    </div>
+                </form>
+            </div>
+        </div>
+    </div>
+</div>
+
+<script>
+    let subjectCount = {{ $studyProgram->subjects->count() }};
+
+    function addSubject() {
+        const container = document.getElementById('subjectsContainer');
+        const div = document.createElement('div');
+        div.className = 'grid grid-cols-12 gap-2 items-end';
+        div.innerHTML = `
+            <div class="col-span-5">
+                <select class="subjectSelect w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subjects[]" data-index="${subjectCount}">
+                    <option value="">-- Изберете предмет --</option>
+                    @foreach($allSubjects as $subject)
+                        <option value="{{ $subject->id }}">{{ $subject->code }} - {{ $subject->name }}</option>
+                    @endforeach
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectType w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_types[${subjectCount}]">
+                    <option value="mandatory">Задолж.</option>
+                    <option value="elective">Изборен</option>
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectYear w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_years[${subjectCount}]">
+                    <option value="1">Година 1</option>
+                    <option value="2">Година 2</option>
+                    <option value="3">Година 3</option>
+                    <option value="4">Година 4</option>
+                    <option value="5">Година 5</option>
+                    <option value="6">Година 6</option>
+                </select>
+            </div>
+            <div class="col-span-2">
+                <select class="subjectSemester w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500" name="subject_semesters[${subjectCount}]">
+                    <option value="winter">Зимски</option>
+                    <option value="summer">Летен</option>
+                </select>
+            </div>
+            <button type="button" onclick="removeSubject(this)" class="col-span-1 px-3 py-2 bg-red-100 text-red-700 rounded text-sm font-semibold hover:bg-red-200">Избриши</button>
+        `;
+        container.appendChild(div);
+        subjectCount++;
+    }
+
+    function removeSubject(button) {
+        button.parentElement.remove();
+    }
+</script>
+</x-app-layout>
Index: resources/views/admin/study-programs/index.blade.php
===================================================================
--- resources/views/admin/study-programs/index.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ resources/views/admin/study-programs/index.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,97 @@
+<x-app-layout>
+<div class="py-12">
+    <div class="max-w-7xl mx-auto sm:px-6 lg:px-8">
+        <div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
+            <div class="p-6 bg-white border-b border-gray-200">
+                <div class="flex justify-between items-center mb-6">
+                    <h2 class="font-bold text-2xl text-gray-900">Управување со студиски програми</h2>
+                    <a href="{{ route('study-programs.create') }}" class="inline-flex items-center px-4 py-2 bg-indigo-600 border border-transparent rounded-md font-semibold text-sm text-white uppercase tracking-widest hover:bg-indigo-700 focus:bg-indigo-700 active:bg-indigo-900 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 transition ease-in-out duration-150">
+                        + Додади нова програма
+                    </a>
+                </div>
+
+                <div class="mb-6">
+                    <form action="{{ route('study-programs.index') }}" method="GET" class="flex gap-3">
+                        <input
+                            type="text"
+                            name="search"
+                            placeholder="Пребарај по име или код..."
+                            value="{{ request('search') }}"
+                            class="flex-1 px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500"
+                        >
+                        <button
+                            type="submit"
+                            class="px-6 py-2 bg-indigo-600 text-white rounded-md font-semibold text-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
+                        >
+                            Пребарај
+                        </button>
+                        @if(request('search'))
+                            <a
+                                href="{{ route('study-programs.index') }}"
+                                class="px-6 py-2 bg-gray-300 text-gray-800 rounded-md font-semibold text-sm hover:bg-gray-400 focus:outline-none focus:ring-2 focus:ring-gray-500 focus:ring-offset-2"
+                            >
+                                Ресетирај
+                            </a>
+                        @endif
+                    </form>
+                </div>
+
+                @if(session('success'))
+                    <div class="mb-4 p-4 bg-green-50 border border-green-200 rounded-lg">
+                        <p class="text-sm text-green-700">{{ session('success') }}</p>
+                    </div>
+                @endif
+
+                <div class="grid grid-cols-1 gap-6">
+                    @forelse($studyPrograms as $program)
+                        <div class="border border-gray-300 rounded-lg p-6 hover:shadow-lg transition">
+                            <div class="flex justify-between items-start mb-4">
+                                <div>
+                                    <h3 class="text-lg font-bold text-gray-900">{{ $program->name_mk }}</h3>
+                                    <p class="text-sm text-gray-600">{{ $program->name_en }} ({{ $program->code }})</p>
+                                    <p class="text-sm text-gray-500 mt-2">{{ $program->duration_years }} години • {{ ucfirst($program->cycle) }} циклус</p>
+                                </div>
+                                <div class="space-x-2">
+                                    <a href="{{ route('study-programs.show', $program) }}" class="inline-block px-3 py-1 bg-blue-100 text-blue-700 rounded text-xs font-semibold hover:bg-blue-200">Преглед</a>
+                                    <a href="{{ route('study-programs.edit', $program) }}" class="inline-block px-3 py-1 bg-yellow-100 text-yellow-700 rounded text-xs font-semibold hover:bg-yellow-200">Уреди</a>
+                                    <form method="POST" action="{{ route('study-programs.destroy', $program) }}" style="display: inline-block;">
+                                        @csrf
+                                        @method('DELETE')
+                                        <button type="submit" onclick="return confirm('Are you sure?')" class="px-3 py-1 bg-red-100 text-red-700 rounded text-xs font-semibold hover:bg-red-200">Избриши</button>
+                                    </form>
+                                </div>
+                            </div>
+                            <div class="mb-3">
+                                <p class="text-sm text-gray-700"><strong>Предмети:</strong> {{ $program->subjects->count() }}</p>
+                                <div class="mt-2 flex flex-wrap gap-2">
+                                    @foreach($program->subjects->take(5) as $subject)
+                                        <span class="px-2 py-1 rounded text-xs font-semibold {{ $subject->pivot->type === 'mandatory' ? 'bg-purple-100 text-purple-800' : 'bg-orange-100 text-orange-800' }}">
+                                            {{ $subject->code }}
+                                        </span>
+                                    @endforeach
+                                    @if($program->subjects->count() > 5)
+                                        <span class="px-2 py-1 rounded text-xs font-semibold bg-gray-100 text-gray-800">
+                                            +{{ $program->subjects->count() - 5 }} повеќе
+                                        </span>
+                                    @endif
+                                </div>
+                            </div>
+                            @if($program->description_mk)
+                                <p class="text-sm text-gray-600 italic">{{ \Illuminate\Support\Str::limit($program->description_mk, 150) }}</p>
+                            @endif
+                        </div>
+                    @empty
+                        <div class="text-center py-12">
+                            <p class="text-gray-500">Нема студиски програми</p>
+                        </div>
+                    @endforelse
+                </div>
+
+                <div class="mt-6">
+                    {{ $studyPrograms->links() }}
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+</x-app-layout>
Index: resources/views/admin/study-programs/show.blade.php
===================================================================
--- resources/views/admin/study-programs/show.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
+++ resources/views/admin/study-programs/show.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -0,0 +1,105 @@
+<x-app-layout>
+<div class="py-12">
+    <div class="max-w-5xl mx-auto sm:px-6 lg:px-8">
+        <div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
+            <div class="p-6 bg-white border-b border-gray-200">
+                <div class="flex justify-between items-start mb-6">
+                    <div>
+                        <h2 class="font-bold text-2xl text-gray-900">{{ $studyProgram->name_mk }}</h2>
+                        <p class="text-gray-600">{{ $studyProgram->name_en }} ({{ $studyProgram->code }})</p>
+                        <div class="mt-2 flex gap-3">
+                            <span class="px-3 py-1 bg-blue-100 text-blue-800 rounded text-sm font-semibold">{{ $studyProgram->duration_years }} години</span>
+                            <span class="px-3 py-1 bg-green-100 text-green-800 rounded text-sm font-semibold">{{ ucfirst($studyProgram->cycle) }} циклус</span>
+                        </div>
+                    </div>
+                    <div class="space-x-2">
+                        <a href="{{ route('study-programs.edit', $studyProgram) }}" class="inline-block px-4 py-2 bg-yellow-100 text-yellow-700 rounded font-semibold hover:bg-yellow-200">Уреди</a>
+                        <form method="POST" action="{{ route('study-programs.destroy', $studyProgram) }}" style="display: inline-block;">
+                            @csrf
+                            @method('DELETE')
+                            <button type="submit" onclick="return confirm('Are you sure?')" class="px-4 py-2 bg-red-100 text-red-700 rounded font-semibold hover:bg-red-200">Избриши</button>
+                        </form>
+                        <a href="{{ route('study-programs.index') }}" class="inline-block px-4 py-2 bg-gray-100 text-gray-700 rounded font-semibold hover:bg-gray-200">Назад</a>
+                    </div>
+                </div>
+
+                @if($studyProgram->description_mk)
+                    <div class="mb-6 p-4 bg-gray-50 rounded border border-gray-200">
+                        <p class="text-gray-700">{{ $studyProgram->description_mk }}</p>
+                    </div>
+                @endif
+
+                <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
+                    <!-- Mandatory Subjects -->
+                    <div>
+                        <h3 class="text-lg font-bold text-gray-900 mb-4">Задолжителни предмети ({{ $mandatorySubjects->count() }})</h3>
+                        <div class="space-y-2">
+                            @forelse($mandatorySubjects as $subject)
+                                <div class="p-3 bg-purple-50 border border-purple-200 rounded">
+                                    <div class="flex justify-between items-start">
+                                        <div>
+                                            <p class="font-semibold text-gray-900">{{ $subject->code }}</p>
+                                            <p class="text-sm text-gray-600">{{ $subject->name }}</p>
+                                            <p class="text-xs text-gray-500 mt-1">
+                                                Година {{ $subject->pivot->year }} •
+                                                {{ $subject->pivot->semester_type === 'winter' ? 'Зимски' : 'Летен' }} семестар •
+                                                {{ $subject->credits }} ECTS
+                                            </p>
+                                        </div>
+                                    </div>
+                                </div>
+                            @empty
+                                <p class="text-gray-500 text-sm">Нема задолжителни предмети</p>
+                            @endforelse
+                        </div>
+                    </div>
+
+                    <!-- Elective Subjects -->
+                    <div>
+                        <h3 class="text-lg font-bold text-gray-900 mb-4">Изборни предмети ({{ $electiveSubjects->count() }})</h3>
+                        <div class="space-y-2">
+                            @forelse($electiveSubjects as $subject)
+                                <div class="p-3 bg-orange-50 border border-orange-200 rounded">
+                                    <div class="flex justify-between items-start">
+                                        <div>
+                                            <p class="font-semibold text-gray-900">{{ $subject->code }}</p>
+                                            <p class="text-sm text-gray-600">{{ $subject->name }}</p>
+                                            <p class="text-xs text-gray-500 mt-1">
+                                                Година {{ $subject->pivot->year }} •
+                                                {{ $subject->pivot->semester_type === 'winter' ? 'Зимски' : 'Летен' }} семестар •
+                                                {{ $subject->credits }} ECTS
+                                            </p>
+                                        </div>
+                                    </div>
+                                </div>
+                            @empty
+                                <p class="text-gray-500 text-sm">Нема изборни предмети</p>
+                            @endforelse
+                        </div>
+                    </div>
+                </div>
+
+                <!-- Statistics -->
+                <div class="mt-8 grid grid-cols-1 md:grid-cols-4 gap-4">
+                    <div class="p-4 bg-gray-50 rounded border border-gray-200">
+                        <p class="text-gray-600 text-sm">Вкупно предмети</p>
+                        <p class="text-2xl font-bold text-gray-900">{{ $studyProgram->subjects->count() }}</p>
+                    </div>
+                    <div class="p-4 bg-purple-50 rounded border border-purple-200">
+                        <p class="text-gray-600 text-sm">Задолжителни</p>
+                        <p class="text-2xl font-bold text-purple-900">{{ $mandatorySubjects->count() }}</p>
+                    </div>
+                    <div class="p-4 bg-orange-50 rounded border border-orange-200">
+                        <p class="text-gray-600 text-sm">Изборни</p>
+                        <p class="text-2xl font-bold text-orange-900">{{ $electiveSubjects->count() }}</p>
+                    </div>
+                    <div class="p-4 bg-blue-50 rounded border border-blue-200">
+                        <p class="text-gray-600 text-sm">Вкупно ECTS</p>
+                        <p class="text-2xl font-bold text-blue-900">{{ $studyProgram->subjects->sum('credits') }}</p>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+</x-app-layout>
Index: resources/views/admin/subjects/edit.blade.php
===================================================================
--- resources/views/admin/subjects/edit.blade.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ resources/views/admin/subjects/edit.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -111,10 +111,32 @@
                     </div>
 
+                    <!-- Career Paths -->
+                    <div>
+                        <label for="career_paths" class="block text-sm font-bold text-gray-900 mb-2">Патеки на развој</label>
+                        <select id="career_paths" name="career_paths[]" multiple class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">
+                            @foreach($careerPaths as $careerPath)
+                                <option value="{{ $careerPath->id }}" {{ $subject->careerPaths->contains($careerPath->id) ? 'selected' : '' }}>
+                                    {{ $careerPath->name }}
+                                </option>
+                            @endforeach
+                        </select>
+                        <p class="text-gray-500 text-sm mt-1">Задржите Ctrl/Cmd за да изберете повеќе (само за изборни предмети)</p>
+                        @error('career_paths') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
+                    </div>
+
                     <!-- Prerequisites -->
                     <div>
                         <label for="prerequisites" class="block text-sm font-bold text-gray-900 mb-2">Предуслови</label>
+                        <div class="mb-3">
+                            <input
+                                type="text"
+                                id="prerequisitesSearch"
+                                placeholder="Пребарај по имена или код..."
+                                class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500"
+                            >
+                        </div>
                         <select id="prerequisites" name="prerequisites[]" multiple class="w-full px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:border-indigo-500 focus:ring-indigo-500">
                             @foreach($prerequisites as $prereq)
-                                <option value="{{ $prereq->id }}" {{ $subject->prerequisites->contains($prereq->id) ? 'selected' : '' }}>
+                                <option value="{{ $prereq->id }}" data-search="{{ strtolower($prereq->code . ' ' . $prereq->name . ' ' . $prereq->name_mk) }}" {{ $subject->prerequisites->contains($prereq->id) ? 'selected' : '' }}>
                                     {{ $prereq->code }} - {{ $prereq->name }}
                                 </option>
@@ -124,4 +146,19 @@
                         @error('prerequisites') <p class="text-red-500 text-sm mt-1">{{ $message }}</p> @enderror
                     </div>
+
+                    <script>
+                        document.getElementById('prerequisitesSearch').addEventListener('input', function(e) {
+                            const searchTerm = e.target.value.toLowerCase();
+                            const options = document.querySelectorAll('#prerequisites option');
+
+                            options.forEach(option => {
+                                if (searchTerm === '' || option.dataset.search.includes(searchTerm)) {
+                                    option.style.display = '';
+                                } else {
+                                    option.style.display = 'none';
+                                }
+                            });
+                        });
+                    </script>
 
                     <!-- Buttons -->
Index: resources/views/admin/subjects/index.blade.php
===================================================================
--- resources/views/admin/subjects/index.blade.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ resources/views/admin/subjects/index.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -10,4 +10,32 @@
                     </a>
                 </div>
+                
+                <div class="mb-6">
+                    <form action="{{ route('subjects.index') }}" method="GET" class="flex gap-3">
+                        <input 
+                            type="text" 
+                            name="search" 
+                            placeholder="Пребарај по имена или код..." 
+                            value="{{ request('search') }}" 
+                            class="flex-1 px-4 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500"
+                        >
+                        <button 
+                            type="submit" 
+                            class="px-6 py-2 bg-indigo-600 text-white rounded-md font-semibold text-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
+                        >
+                            Пребарај
+                        </button>
+                        @if(request('search'))
+                            <a 
+                                href="{{ route('subjects.index') }}" 
+                                class="px-6 py-2 bg-gray-300 text-gray-800 rounded-md font-semibold text-sm hover:bg-gray-400 focus:outline-none focus:ring-2 focus:ring-gray-500 focus:ring-offset-2"
+                            >
+                                Ресетирај
+                            </a>
+                        @endif
+                    </form>
+                </div>
+
+
 
                 @if(session('success'))
@@ -17,4 +45,5 @@
                 @endif
 
+                
                 <div class="overflow-x-auto">
                     <table class="min-w-full border-collapse border border-gray-300">
Index: resources/views/dashboard.blade.php
===================================================================
--- resources/views/dashboard.blade.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ resources/views/dashboard.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -52,4 +52,5 @@
                     </div>
                 @endif
+
             </div>
         </div>
Index: resources/views/layouts/navigation.blade.php
===================================================================
--- resources/views/layouts/navigation.blade.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ resources/views/layouts/navigation.blade.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -16,4 +16,17 @@
                         {{ __('Dashboard') }}
                     </x-nav-link>
+                    @if(Auth::user()->isAdmin())
+                        <x-nav-link :href="route('subjects.index')" :active="request()->routeIs('subjects.*')">
+                            {{ __('Предмети') }}
+                        </x-nav-link>
+                        <x-nav-link :href="route('study-programs.index')" :active="request()->routeIs('study-programs.*')">
+                            {{ __('Студиски програми') }}
+                        </x-nav-link>
+                    @endif
+                    @if(Auth::user()->isStudent())
+                        <x-nav-link :href="route('roadmap.create')" :active="request()->routeIs('roadmap.*')">
+                            {{ __('Академски roadmap') }}
+                        </x-nav-link>
+                    @endif
                 </div>
             </div>
Index: routes/web.php
===================================================================
--- routes/web.php	(revision f93eddccc0f2cc1d8f7162aed69dddff23670998)
+++ routes/web.php	(revision afb1e5bfeeac2591568c6a1777975b3c78cade31)
@@ -4,4 +4,5 @@
 use App\Http\Controllers\RoadmapController;
 use App\Http\Controllers\SubjectController;
+use App\Http\Controllers\StudyProgramController;
 use Illuminate\Support\Facades\Route;
 
@@ -27,4 +28,5 @@
     // Admin routes
     Route::resource('subjects', SubjectController::class)->middleware('admin');
+    Route::resource('study-programs', StudyProgramController::class)->middleware('admin');
 });
 
