<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>GObject Linter Rules</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<!-- Mobile header -->
<div class="mobile-header">
<button id="mobileMenuBtn" class="mobile-menu-btn">
<span class="mobile-menu-text">☰</span>
</button>
<span class="mobile-title">GObject Linter</span>
</div>
<!-- Mobile overlay -->
<div id="mobileOverlay" class="mobile-overlay"></div>
<div class="flex h-screen overflow-hidden">
<!-- Sidebar -->
<aside id="sidebar" class="sidebar w-80 border-r flex flex-col">
<div class="p-4 border-b divider flex items-center justify-between">
<div>
<h1 class="text-2xl font-bold">GObject Linter</h1>
</div>
<a
href="https://github.com/bilelmoussaoui/gobject-linter"
target="_blank"
class="opacity-60 hover:opacity-100"
>
<svg
class="github-icon w-6 h-6"
viewBox="0 0 16 16"
fill="currentColor"
>
<path
d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"
/>
</svg>
</a>
</div>
<div class="p-3 space-y-3 border-b divider">
<input
id="search"
placeholder="Search..."
class="search-input w-full px-3 py-2 rounded-lg border"
/>
<select
id="categoryFilter"
class="filter-select w-full px-3 py-2 rounded-lg border"
>
<option value="">All Categories</option>
</select>
</div>
<div id="ruleStats" class="rule-stats px-4 py-1.5 border-b divider"></div>
<div
id="ruleList"
class="flex-1 overflow-y-auto overflow-x-hidden"
></div>
</aside>
<!-- Main content -->
<main class="flex-1 overflow-y-auto">
<div id="ruleDetail" class="max-w-6xl mx-auto px-10 py-10">
<p class="detail-label text-lg">Select a rule to view details</p>
</div>
</main>
</div>
<script src="script.js"></script>
</body>
</html>