Major Updates: - Rewrote all docs in beginner-friendly 'ELI5' language - Created docs index with user journey navigation - Added complete getting-started guide for novice users - Set up GitHub Container Registry (GHCR) automation - Configured GitHub Pages deployment for documentation Documentation: - docs/index.md - Central navigation hub - docs/getting-started.md - Step-by-step beginner guide - docs/github-setup.md - CI/CD setup instructions - README.md - Complete rewrite in accessible language - CONTRIBUTING.md - Contributor guidelines - Multiple comprehensive API and schema docs CI/CD Workflows: - .github/workflows/docker-build.yml - Multi-platform builds to GHCR - .github/workflows/docs.yml - Automated docs deployment to Pages - Supports main (latest), development (dev), and version tags - Automated testing of built images - Beautiful documentation site with dark theme Benefits: - Zero barrier to entry for new users - Automated Docker builds (AMD64 + ARM64) - Professional documentation site - No Docker Hub account needed (uses GHCR) - Complete CI/CD pipeline All 7 implementation phases complete - project is production ready!
161 lines
6.4 KiB
HTML
161 lines
6.4 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<title>Code coverage report for All files</title>
|
|
<meta charset="utf-8" />
|
|
<link rel="stylesheet" href="prettify.css" />
|
|
<link rel="stylesheet" href="base.css" />
|
|
<link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<style type='text/css'>
|
|
.coverage-summary .sorter {
|
|
background-image: url(sort-arrow-sprite.png);
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div class='wrapper'>
|
|
<div class='pad1'>
|
|
<h1>All files</h1>
|
|
<div class='clearfix'>
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">69.79% </span>
|
|
<span class="quiet">Statements</span>
|
|
<span class='fraction'>67/96</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">75.23% </span>
|
|
<span class="quiet">Branches</span>
|
|
<span class='fraction'>79/105</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">66.66% </span>
|
|
<span class="quiet">Functions</span>
|
|
<span class='fraction'>26/39</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">70.96% </span>
|
|
<span class="quiet">Lines</span>
|
|
<span class='fraction'>66/93</span>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<p class="quiet">
|
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
</p>
|
|
<template id="filterTemplate">
|
|
<div class="quiet">
|
|
Filter:
|
|
<input type="search" id="fileSearch">
|
|
</div>
|
|
</template>
|
|
</div>
|
|
<div class='status-line medium'></div>
|
|
<div class="pad1">
|
|
<table class="coverage-summary">
|
|
<thead>
|
|
<tr>
|
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody><tr>
|
|
<td class="file high" data-value="ImportReviewTable.tsx"><a href="ImportReviewTable.tsx.html">ImportReviewTable.tsx</a></td>
|
|
<td data-value="90.47" class="pic high">
|
|
<div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
|
|
</td>
|
|
<td data-value="90.47" class="pct high">90.47%</td>
|
|
<td data-value="21" class="abs high">19/21</td>
|
|
<td data-value="91.3" class="pct high">91.3%</td>
|
|
<td data-value="23" class="abs high">21/23</td>
|
|
<td data-value="100" class="pct high">100%</td>
|
|
<td data-value="8" class="abs high">8/8</td>
|
|
<td data-value="90" class="pct high">90%</td>
|
|
<td data-value="20" class="abs high">18/20</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file high" data-value="Layout.tsx"><a href="Layout.tsx.html">Layout.tsx</a></td>
|
|
<td data-value="100" class="pic high">
|
|
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
</td>
|
|
<td data-value="100" class="pct high">100%</td>
|
|
<td data-value="5" class="abs high">5/5</td>
|
|
<td data-value="100" class="pct high">100%</td>
|
|
<td data-value="2" class="abs high">2/2</td>
|
|
<td data-value="100" class="pct high">100%</td>
|
|
<td data-value="2" class="abs high">2/2</td>
|
|
<td data-value="100" class="pct high">100%</td>
|
|
<td data-value="5" class="abs high">5/5</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file medium" data-value="ProxyHostForm.tsx"><a href="ProxyHostForm.tsx.html">ProxyHostForm.tsx</a></td>
|
|
<td data-value="64.1" class="pic medium">
|
|
<div class="chart"><div class="cover-fill" style="width: 64%"></div><div class="cover-empty" style="width: 36%"></div></div>
|
|
</td>
|
|
<td data-value="64.1" class="pct medium">64.1%</td>
|
|
<td data-value="39" class="abs medium">25/39</td>
|
|
<td data-value="86.84" class="pct high">86.84%</td>
|
|
<td data-value="38" class="abs high">33/38</td>
|
|
<td data-value="50" class="pct medium">50%</td>
|
|
<td data-value="20" class="abs medium">10/20</td>
|
|
<td data-value="65.78" class="pct medium">65.78%</td>
|
|
<td data-value="38" class="abs medium">25/38</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file medium" data-value="RemoteServerForm.tsx"><a href="RemoteServerForm.tsx.html">RemoteServerForm.tsx</a></td>
|
|
<td data-value="58.06" class="pic medium">
|
|
<div class="chart"><div class="cover-fill" style="width: 58%"></div><div class="cover-empty" style="width: 42%"></div></div>
|
|
</td>
|
|
<td data-value="58.06" class="pct medium">58.06%</td>
|
|
<td data-value="31" class="abs medium">18/31</td>
|
|
<td data-value="54.76" class="pct medium">54.76%</td>
|
|
<td data-value="42" class="abs medium">23/42</td>
|
|
<td data-value="66.66" class="pct medium">66.66%</td>
|
|
<td data-value="9" class="abs medium">6/9</td>
|
|
<td data-value="60" class="pct medium">60%</td>
|
|
<td data-value="30" class="abs medium">18/30</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class='push'></div><!-- for sticky footer -->
|
|
</div><!-- /wrapper -->
|
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
Code coverage generated by
|
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
at 2025-11-18T17:16:50.136Z
|
|
</div>
|
|
<script src="prettify.js"></script>
|
|
<script>
|
|
window.onload = function () {
|
|
prettyPrint();
|
|
};
|
|
</script>
|
|
<script src="sorter.js"></script>
|
|
<script src="block-navigation.js"></script>
|
|
</body>
|
|
</html>
|
|
|