docs.pyserve.org/index.html
Илья Глазунов 1f25033d2d initial commit
2025-12-05 12:57:41 +03:00

119 lines
5.0 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>pyserve - Documentation</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="container">
<div id="header">
<h1>pyserve</h1>
<div class="tagline">python application orchestrator</div>
</div>
<div id="content">
<h2>About</h2>
<p>
pyserve is a Python application orchestrator and HTTP server.
Built on top of <strong>Starlette</strong> and <strong>Uvicorn</strong>,
it manages multiple ASGI/WSGI applications through a single entry point
with process isolation, health monitoring, and auto-restart.
</p>
<h2>Key Features</h2>
<ul class="indent">
<li><strong>Process Orchestration</strong> — Run multiple apps in isolated subprocesses with health checks</li>
<li><strong>Auto-restart</strong> — Failed processes restart automatically with exponential backoff</li>
<li><strong>Multi-worker Support</strong> — Configure workers per application</li>
<li><strong>nginx-style Routing</strong> — Regex patterns with exact, prefix, and case-insensitive matching</li>
<li><strong>Reverse Proxy</strong> — Forward requests to backend services with header manipulation</li>
<li><strong>Static File Serving</strong> — Efficient serving with correct MIME types</li>
<li><strong>SPA Support</strong> — Single Page Application fallback routing</li>
<li><strong>SSL/HTTPS</strong> — Secure connections with certificate configuration</li>
<li><strong>ASGI/WSGI Support</strong> — FastAPI, Flask, Django, Starlette and more</li>
<li><strong>Request Tracing</strong> — X-Request-ID propagation through proxied requests</li>
</ul>
<h2>Documentation</h2>
<h3>Getting Started</h3>
<table class="dirindex">
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="getting-started/installation.html">Installation</a></td>
<td class="desc">Download and install pyserve</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="getting-started/quickstart.html">Quick Start</a></td>
<td class="desc">Get up and running in 5 minutes</td>
</tr>
</table>
<h3>Guides</h3>
<table class="dirindex">
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="guides/process-orchestration.html">Process Orchestration</a></td>
<td class="desc">Run apps in isolated processes with health monitoring</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="guides/configuration.html">Configuration</a></td>
<td class="desc">Complete configuration reference</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="guides/routing.html">Routing</a></td>
<td class="desc">URL routing and regex patterns</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="guides/reverse-proxy.html">Reverse Proxy</a></td>
<td class="desc">Proxying requests to backend services</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="guides/asgi-mount.html">ASGI Mounting</a></td>
<td class="desc">Mount Python web frameworks in-process</td>
</tr>
</table>
<h3>Reference</h3>
<table class="dirindex">
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="reference/cli.html">CLI Reference</a></td>
<td class="desc">Command-line interface options</td>
</tr>
<tr>
<td class="icon"><span class="file">📄</span></td>
<td><a href="reference/extensions.html">Extensions</a></td>
<td class="desc">Built-in extension modules</td>
</tr>
</table>
<h2>Resources</h2>
<ul class="plain">
<li><a href="https://github.com/ShiftyX1/PyServe">GitHub Repository</a></li>
<li><a href="https://github.com/ShiftyX1/PyServe/releases">Releases &amp; Downloads</a></li>
</ul>
<h2>Version</h2>
<p>Current version: <strong>0.9.10</strong></p>
<h2>Requirements</h2>
<ul class="indent">
<li>Python 3.12 or higher</li>
</ul>
</div>
<div id="footer">
<p>pyserve &copy; 2024-2025 | MIT License</p>
</div>
</div>
</body>
</html>