Offizielle SDKs
thelawin.dev bietet offizielle Client-Bibliotheken für 8 Programmiersprachen.
Alle SDKs teilen ein konsistentes API-Design:
- Fluent Builder Pattern - Methoden verketten um Rechnungen zu bauen
- Typsicherheit - Vollständige Typ-Definitionen und Autovervollständigung
- Automatische Logo-Kodierung - Logos aus Dateien laden, automatisch Base64 kodieren
- Result Pattern - Klare Erfolg/Fehler-Behandlung
- Keine Abhängigkeiten - Minimaler Footprint
Installation
Beta-Phase
Während der Beta sind die SDKs direkt über GitHub verfügbar. Die Veröffentlichung auf npm, PyPI, RubyGems und anderen Package Registries erfolgt mit dem stabilen Release.
Alle SDKs können direkt vom GitHub-Repository installiert werden:
| Sprache | Installation via GitHub |
|---|---|
| TypeScript | npm install github:steviee/thelawin-clients#path:typescript |
| Python | pip install git+https://github.com/steviee/thelawin-clients.git#subdirectory=python |
| Ruby | gem 'thelawin', git: 'https://github.com/steviee/thelawin-clients.git', glob: 'ruby/*.gemspec' |
| Kotlin | JitPack oder lokaler Build |
| Java | JitPack oder lokaler Build |
| Swift | https://github.com/steviee/thelawin-clients.git (SPM) |
| Dart | git: https://github.com/steviee/thelawin-clients.git, path: dart |
| C# | Lokaler Build oder Git Submodule |
Einheitliches Interface
Alle SDKs folgen dem gleichen Muster:
client = ThelawinClient(api_key)
result = client.invoice()
.number("2026-001")
.date("2026-01-15")
.seller(name: "Acme GmbH", vat_id: "DE123456789", ...)
.buyer(name: "Kunde AG", ...)
.addItem(description: "Beratung", quantity: 8, unit: "HUR", unit_price: 150)
.logoFile("./logo.png") // Automatische Base64-Kodierung
.template("minimal")
.generate()
if result.success:
result.savePdf("./rechnung.pdf")
else:
for error in result.errors:
print(f"{error.path}: {error.message}")Quellcode
Alle SDKs sind Open Source und auf GitHub verfügbar:
github.com/steviee/thelawin-clients
bash
git clone https://github.com/steviee/thelawin-clients.git