Skip to content

Commit d64fedc

Browse files
committed
fix(docs): resolve internal .md links, dark theme button contrast, and add collapsible sidebar groups
1 parent 8a4a3ca commit d64fedc

20 files changed

Lines changed: 873 additions & 284 deletions

‎docs/assets/docs.css‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,14 @@
44
.sidebar-brand{margin-bottom:var(--space-6)}
55
.sidebar-brand a{display:flex;align-items:center;gap:var(--space-2);font:700 var(--text-base) var(--font-display)}
66
.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-1)}
7+
78
.side-group{margin-top:var(--space-4)}
8-
.side-group-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint);margin:0 var(--space-3) var(--space-2)}
9+
.side-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;background:none;border:0;border-radius:var(--radius-lg);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint);font-weight:700;transition:background var(--transition-interactive)}
10+
.side-group-header:hover{background:var(--color-surface-2);color:var(--color-text-muted)}
11+
.side-group-header .chevron{display:inline-block;transition:transform .18s ease;font-size:.8em}
12+
.side-group.collapsed .chevron{transform:rotate(-90deg)}
13+
.side-group-items{display:flex;flex-direction:column;gap:var(--space-1);overflow:hidden;max-height:1000px;transition:max-height .25s ease}
14+
.side-group.collapsed .side-group-items{max-height:0}
915
.side-link{display:block;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm);color:var(--color-text-muted);transition:all var(--transition-interactive)}
1016
.side-link:hover{background:var(--color-surface-2);color:var(--color-text)}
1117
.side-link.active{background:var(--color-primary);color:var(--color-text-inverse);font-weight:600}

‎docs/assets/style.css‎

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎docs/guide/00-index.html‎

Lines changed: 74 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -21,34 +21,46 @@
2121
</div>
2222
<nav class="sidebar-nav">
2323
<a class="side-link active" href="00-index.html">Home</a>
24-
<div class="side-group"><div class="side-group-title">Getting Started</div>
24+
<div class="side-group collapsed" data-group="group-0">
25+
<button type="button" class="side-group-header" data-group-toggle="group-0"><span>Getting Started</span><span class="chevron">&#9660;</span></button>
26+
<div class="side-group-items">
2527
<a class="side-link" href="01-installation.html">Installation</a>
2628
<a class="side-link" href="02-configuration.html">Configuration</a>
27-
</div>
28-
<div class="side-group"><div class="side-group-title">Core Architecture</div>
29+
</div></div>
30+
<div class="side-group collapsed" data-group="group-1">
31+
<button type="button" class="side-group-header" data-group-toggle="group-1"><span>Core Architecture</span><span class="chevron">&#9660;</span></button>
32+
<div class="side-group-items">
2933
<a class="side-link" href="03-architecture.html">Kernel & Boot Lifecycle</a>
3034
<a class="side-link" href="04-activities-and-intents.html">Activities & Intents</a>
3135
<a class="side-link" href="05-views-and-widgets.html">Views & Widgets</a>
3236
<a class="side-link" href="06-viewmodel-and-state.html">ViewModel & State</a>
33-
</div>
34-
<div class="side-group"><div class="side-group-title">Data & Infrastructure</div>
37+
</div></div>
38+
<div class="side-group collapsed" data-group="group-2">
39+
<button type="button" class="side-group-header" data-group-toggle="group-2"><span>Data & Infrastructure</span><span class="chevron">&#9660;</span></button>
40+
<div class="side-group-items">
3541
<a class="side-link" href="07-database-and-doctrine.html">Database & Doctrine</a>
3642
<a class="side-link" href="08-caching-and-redis.html">Caching & Redis</a>
37-
</div>
38-
<div class="side-group"><div class="side-group-title">Extensibility</div>
43+
</div></div>
44+
<div class="side-group collapsed" data-group="group-3">
45+
<button type="button" class="side-group-header" data-group-toggle="group-3"><span>Extensibility</span><span class="chevron">&#9660;</span></button>
46+
<div class="side-group-items">
3947
<a class="side-link" href="09-plugins.html">Plugin System</a>
4048
<a class="side-link" href="10-broadcasts.html">Broadcasts</a>
41-
</div>
42-
<div class="side-group"><div class="side-group-title">Telegram Integration</div>
49+
</div></div>
50+
<div class="side-group collapsed" data-group="group-4">
51+
<button type="button" class="side-group-header" data-group-toggle="group-4"><span>Telegram Integration</span><span class="chevron">&#9660;</span></button>
52+
<div class="side-group-items">
4353
<a class="side-link" href="11-transport-webhook-and-polling.html">Webhook & Polling</a>
4454
<a class="side-link" href="12-telegram-api-reference.html">Telegram API Reference</a>
45-
</div>
46-
<div class="side-group"><div class="side-group-title">Other Topics</div>
55+
</div></div>
56+
<div class="side-group collapsed" data-group="group-5">
57+
<button type="button" class="side-group-header" data-group-toggle="group-5"><span>Other Topics</span><span class="chevron">&#9660;</span></button>
58+
<div class="side-group-items">
4759
<a class="side-link" href="13-localization.html">Localization (i18n)</a>
4860
<a class="side-link" href="14-testing.html">Testing</a>
4961
<a class="side-link" href="15-deployment.html">Deployment</a>
5062
<a class="side-link" href="16-advanced-features.html">Advanced Features</a>
51-
</div>
63+
</div></div>
5264
</nav>
5365
</aside>
5466
<main id="content" class="docs-content">
@@ -60,37 +72,37 @@ <h1 id="aicriontandroid-documentation">Aicrion\Tandroid Documentation</h1>
6072
is the recommended learning path.</p>
6173
<h2 id="getting-started">Getting Started</h2>
6274
<ul>
63-
<li><a href="01-installation.md">Installation</a></li>
64-
<li><a href="02-configuration.md">Configuration</a></li>
75+
<li><a href="01-installation.html">Installation</a></li>
76+
<li><a href="02-configuration.html">Configuration</a></li>
6577
</ul>
6678
<h2 id="core-architecture">Core Architecture</h2>
6779
<ul>
68-
<li><a href="03-architecture.md">The Kernel and the Boot Lifecycle</a></li>
69-
<li><a href="04-activities-and-intents.md">Activities and Intents</a></li>
70-
<li><a href="05-views-and-widgets.md">Views and Widgets</a></li>
71-
<li><a href="06-viewmodel-and-state.md">ViewModel and State Management</a></li>
80+
<li><a href="03-architecture.html">The Kernel and the Boot Lifecycle</a></li>
81+
<li><a href="04-activities-and-intents.html">Activities and Intents</a></li>
82+
<li><a href="05-views-and-widgets.html">Views and Widgets</a></li>
83+
<li><a href="06-viewmodel-and-state.html">ViewModel and State Management</a></li>
7284
</ul>
7385
<h2 id="data-and-infrastructure">Data and Infrastructure</h2>
7486
<ul>
75-
<li><a href="07-database-and-doctrine.md">Database and Doctrine</a></li>
76-
<li><a href="08-caching-and-redis.md">Caching and Redis</a></li>
87+
<li><a href="07-database-and-doctrine.html">Database and Doctrine</a></li>
88+
<li><a href="08-caching-and-redis.html">Caching and Redis</a></li>
7789
</ul>
7890
<h2 id="extensibility">Extensibility</h2>
7991
<ul>
80-
<li><a href="09-plugins.md">Plugin System (Package Manager)</a></li>
81-
<li><a href="10-broadcasts.md">Broadcasts and System-Wide Events</a></li>
92+
<li><a href="09-plugins.html">Plugin System (Package Manager)</a></li>
93+
<li><a href="10-broadcasts.html">Broadcasts and System-Wide Events</a></li>
8294
</ul>
8395
<h2 id="connecting-to-telegram">Connecting to Telegram</h2>
8496
<ul>
85-
<li><a href="11-transport-webhook-and-polling.md">Webhook and Polling Modes</a></li>
86-
<li><a href="12-telegram-api-reference.md">Complete Telegram API Reference</a></li>
97+
<li><a href="11-transport-webhook-and-polling.html">Webhook and Polling Modes</a></li>
98+
<li><a href="12-telegram-api-reference.html">Complete Telegram API Reference</a></li>
8799
</ul>
88100
<h2 id="other-features">Other Features</h2>
89101
<ul>
90-
<li><a href="13-localization.md">Localization (i18n)</a></li>
91-
<li><a href="14-testing.md">Testing</a></li>
92-
<li><a href="15-deployment.md">Deployment: Shared Hosting and VPS</a></li>
93-
<li><a href="16-advanced-features.md">Advanced Features: Remote Intents, Guest Mode, Managed Bots</a></li>
102+
<li><a href="13-localization.html">Localization (i18n)</a></li>
103+
<li><a href="14-testing.html">Testing</a></li>
104+
<li><a href="15-deployment.html">Deployment: Shared Hosting and VPS</a></li>
105+
<li><a href="16-advanced-features.html">Advanced Features: Remote Intents, Guest Mode, Managed Bots</a></li>
94106
</ul>
95107
<h2 id="quick-reference">Quick Reference</h2>
96108
<table>
@@ -105,52 +117,52 @@ <h2 id="quick-reference">Quick Reference</h2>
105117
<tr>
106118
<td><code>Activity</code></td>
107119
<td><code>Activity\BotActivity</code></td>
108-
<td><a href="04-activities-and-intents.md">Activities and Intents</a></td>
120+
<td><a href="04-activities-and-intents.html">Activities and Intents</a></td>
109121
</tr>
110122
<tr>
111123
<td><code>Intent</code> / <code>IntentFilter</code></td>
112124
<td><code>Intent\Intent</code> / <code>Attribute\IntentFilter</code></td>
113-
<td><a href="04-activities-and-intents.md">Activities and Intents</a></td>
125+
<td><a href="04-activities-and-intents.html">Activities and Intents</a></td>
114126
</tr>
115127
<tr>
116128
<td><code>ActivityManagerService</code></td>
117129
<td><code>Kernel\ActivityManager</code></td>
118-
<td><a href="03-architecture.md">The Kernel</a></td>
130+
<td><a href="03-architecture.html">The Kernel</a></td>
119131
</tr>
120132
<tr>
121133
<td><code>PackageManagerService</code></td>
122134
<td><code>Package\PackageManager</code></td>
123-
<td><a href="09-plugins.md">Plugins</a></td>
135+
<td><a href="09-plugins.html">Plugins</a></td>
124136
</tr>
125137
<tr>
126138
<td><code>AndroidManifest.xml</code></td>
127139
<td>each plugin's <code>Package\Manifest</code></td>
128-
<td><a href="09-plugins.md">Plugins</a></td>
140+
<td><a href="09-plugins.html">Plugins</a></td>
129141
</tr>
130142
<tr>
131143
<td><code>View</code> / <code>Widget</code></td>
132144
<td><code>View\View</code> / <code>Widget\*</code></td>
133-
<td><a href="05-views-and-widgets.md">Views and Widgets</a></td>
145+
<td><a href="05-views-and-widgets.html">Views and Widgets</a></td>
134146
</tr>
135147
<tr>
136148
<td><code>androidx.lifecycle.ViewModel</code></td>
137149
<td><code>Kernel\ViewModel\ViewModel</code></td>
138-
<td><a href="06-viewmodel-and-state.md">ViewModel</a></td>
150+
<td><a href="06-viewmodel-and-state.html">ViewModel</a></td>
139151
</tr>
140152
<tr>
141153
<td><code>BroadcastReceiver</code></td>
142154
<td><code>Attribute\BroadcastFilter</code></td>
143-
<td><a href="10-broadcasts.md">Broadcasts</a></td>
155+
<td><a href="10-broadcasts.html">Broadcasts</a></td>
144156
</tr>
145157
<tr>
146158
<td>Back Stack</td>
147159
<td><code>Kernel\BackStackStore</code></td>
148-
<td><a href="03-architecture.md">The Kernel</a></td>
160+
<td><a href="03-architecture.html">The Kernel</a></td>
149161
</tr>
150162
<tr>
151163
<td>Navigation Deep Links</td>
152164
<td><code>Kernel\DeepLinkResolver</code></td>
153-
<td><a href="04-activities-and-intents.md">Activities and Intents</a></td>
165+
<td><a href="04-activities-and-intents.html">Activities and Intents</a></td>
154166
</tr>
155167
</tbody>
156168
</table>
@@ -168,11 +180,33 @@ <h2 id="found-a-bug">Found a bug?</h2>
168180
<script>
169181
(function(){
170182
const r=document.documentElement,t=document.querySelector('[data-theme-toggle]');
171-
let d=matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light';
183+
let d=localStorage.getItem('aicrion-theme')||(matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light');
172184
r.setAttribute('data-theme',d);
173-
t&&t.addEventListener('click',()=>{d=d==='dark'?'light':'dark';r.setAttribute('data-theme',d);});
185+
t&&t.addEventListener('click',()=>{
186+
d=d==='dark'?'light':'dark';
187+
r.setAttribute('data-theme',d);
188+
localStorage.setItem('aicrion-theme',d);
189+
});
190+
174191
const s=document.querySelector('[data-sidebar]'),st=document.querySelector('[data-sidebar-toggle]');
175192
st&&st.addEventListener('click',()=>s.classList.toggle('open'));
193+
194+
const STORAGE_KEY='aicrion-sidebar-groups';
195+
let groupState={};
196+
try { groupState=JSON.parse(localStorage.getItem(STORAGE_KEY)||'{}'); } catch(e) {}
197+
198+
document.querySelectorAll('[data-group-toggle]').forEach(function(btn){
199+
const id=btn.getAttribute('data-group-toggle');
200+
const group=btn.closest('.side-group');
201+
if (Object.prototype.hasOwnProperty.call(groupState, id)) {
202+
group.classList.toggle('collapsed', groupState[id]===true);
203+
}
204+
btn.addEventListener('click',function(){
205+
const collapsed=group.classList.toggle('collapsed');
206+
groupState[id]=collapsed;
207+
localStorage.setItem(STORAGE_KEY, JSON.stringify(groupState));
208+
});
209+
});
176210
})();
177211
</script>
178212
</body>

0 commit comments

Comments
 (0)