# Open Source Attribution

<div style="text-align: justify;">

JasperWho? and its companion Background Printing Service are built on open source software. We are grateful to the authors and contributors of the following packages.

---

<h3 id="jasperwho" style="color: #203671; margin-top: 2.2em;">JasperWho?</h3>

<table style="width: 100%; border-collapse: collapse;">
  <thead>
    <tr style="border-top: 1px solid #e6e8ef; border-bottom: 1px solid #e6e8ef;">
      <th style="text-align: left; padding: 6px 10px; white-space: nowrap;">Package</th>
      <th style="text-align: left; padding: 6px 10px;">License</th>
      <th style="text-align: left; padding: 6px 10px;">Description</th>
    </tr>
  </thead>
  <tbody>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/laravel/framework">laravel/framework</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">The Laravel PHP framework — routing, ORM, queues, and the application foundation.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/laravel/reverb">laravel/reverb</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">First-party Laravel WebSocket server — used to broadcast print task events in real time.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/laravel/sanctum">laravel/sanctum</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">API token authentication for the JasperWho? REST API.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/laravel/tinker">laravel/tinker</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">REPL for the Laravel application.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/livewire/livewire">livewire/livewire</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">Full-stack component framework for the JasperWho? frontend.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/opcodesio/log-viewer">opcodesio/log-viewer</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">In-browser Laravel log viewer.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/knuckleswtf/scribe">knuckleswtf/scribe</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">Automatic API documentation generator.</td>
    </tr>
    <tr>
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/quilhasoft/jasperphp">quilhasoft/jasperphp</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">Pure-PHP JasperReports renderer — the engine that compiles <code>.jrxml</code> templates and produces PDFs without a Java runtime.</td>
    </tr>
  </tbody>
</table>

---

<h3 id="print-service" style="color: #203671; margin-top: 2.2em;">Background Printing Service</h3>

<table style="width: 100%; border-collapse: collapse;">
  <thead>
    <tr style="border-top: 1px solid #e6e8ef; border-bottom: 1px solid #e6e8ef;">
      <th style="text-align: left; padding: 6px 10px; white-space: nowrap;">Package</th>
      <th style="text-align: left; padding: 6px 10px;">License</th>
      <th style="text-align: left; padding: 6px 10px;">Description</th>
    </tr>
  </thead>
  <tbody>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/pvginkel/PdfiumViewer">PdfiumViewer</a></td>
      <td style="padding: 6px 10px;">Apache 2.0</td>
      <td style="padding: 6px 10px;">.NET wrapper around the PDFium library — used to render and send PDFs to Windows printers.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://pdfium.googlesource.com/pdfium/">PDFium</a></td>
      <td style="padding: 6px 10px;">BSD 3-Clause</td>
      <td style="padding: 6px 10px;">Google's PDF rendering engine, bundled as a native binary via <code>PdfiumViewer.Native.x86_64.v8-xfa</code>.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/restsharp/RestSharp">RestSharp</a></td>
      <td style="padding: 6px 10px;">Apache 2.0</td>
      <td style="padding: 6px 10px;">HTTP client library for all API communication with JasperWho?.</td>
    </tr>
    <tr style="border-bottom: 1px solid #e6e8ef;">
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/JamesNK/Newtonsoft.Json">Newtonsoft.Json</a></td>
      <td style="padding: 6px 10px;">MIT</td>
      <td style="padding: 6px 10px;">JSON serialisation and deserialisation for API responses and WebSocket messages.</td>
    </tr>
    <tr>
      <td style="padding: 6px 10px; white-space: nowrap;"><a href="https://github.com/serilog/serilog">Serilog</a></td>
      <td style="padding: 6px 10px;">Apache 2.0</td>
      <td style="padding: 6px 10px;">Structured logging to console and rolling file (<code>Serilog.Sinks.Console</code>, <code>Serilog.Sinks.File</code>).</td>
    </tr>
  </tbody>
</table>

</div>