Arbeiten in Arbeit - nicht bereit für den allgemeinen Gebrauch
AppWrite SDK Generator ist eine PHP-Bibliothek zur automatischen generierenden SDK-Bibliotheken für mehrere Sprachen und Plattformen.
Der SDK -Generator verwendet vordefinierte Spracheinstellungen als Zweigvorlagen, um Codebasen basierend auf verschiedenen API -Spezifikationen zu generieren.
Derzeit ist die einzige unterstützte Spezifikation Swagger 2.0, aber wir beabsichtigen, in naher Zukunft weitere Unterstützung für weitere Spezifikationen hinzuzufügen. In diesem Generator fehlt immer noch die Definitions-/Modellspezifikationen.
Installieren Sie mit Composer:
Cli
composer update --ignore-platform-reqs --optimize-autoloaderDocker (Unix)
docker run --rm --interactive --tty --volume " $( pwd ) " :/app composer install --ignore-platform-reqsDocker (Windows)
docker run --rm --interactive --tty --volume " %cd% " :/app composer install --ignore-platform-reqsErstellen Sie Sprach- und SDK -Instanzen und generieren Sie Code für das Zielverzeichnis.
<?php
require_once ' vendor/autoload.php ' ;
use Appwrite Spec Swagger2 ;
use Appwrite SDK SDK ;
use Appwrite SDK Language PHP ;
// Read API specification file (Swagger 2) and create spec instance
$ spec = new Swagger2 ( file_get_contents ( ' https://appwrite.io/v1/open-api-2.json?extension=1 ' ));
// Create language instance
$ lang = new PHP ();
$ lang // Set language or platform specific options
-> setComposerPackage ( ' my-api ' )
-> setComposerVendor ( ' my-company ' )
;
// Create the SDK object with the language and spec instances
$ sdk = new SDK ( $ lang , $ spec );
$ sdk
-> setLogo ( ' https://appwrite.io/v1/images/console.png ' )
-> setLicenseContent ( ' License content here. ' )
-> setVersion ( ' v1.1.0 ' )
;
$ sdk -> generate ( __DIR__ . ' /examples/php ' ); // Generate source code | Sprache | Unterstützte Versionen | Codierungsstandards | Paketmanager | Betreuer |
|---|---|---|---|---|
| Netz | Es5+ | NPM -Codierungsstil | NPM, Garn, | @eldadfux |
| Flattern | Effektiver Pfeil | Pub -Tool | @BartektArtanus @Almoullim @Lohanidamodar | |
| Android (Kotlin, Java) | 5.0+ | Android Style Guide | Gradle, Maven | @entsagen |
| iOS, macos (Swift) | iOS 15+, macOS 11+ | Swift Style Guide | Swift PKG Manager | @entsagen |
| Einheit (CSHARP) | ? | Du? |
| Sprache | Unterstützte Versionen | Codierungsstandards | Paketmanager | Mitwirkende |
|---|---|---|---|---|
| Typoskript | NPM -Codierungsstil | NPM, Garn | @eldadfux | |
| Nodejs | 8, 10, 12 | NPM -Codierungsstil | NPM, Garn | @eldadfux |
| Php | 7.0+ | PHP Abb | Komponist | @eldadfux |
| Rubin | 2.4+ | Ruby Style Guide | JUWEL | @eldadfux @abnegate |
| Python | 3.5+ | Pep8 | PIP | @eldadfux @abnegate |
| Pfeil | 2.7+ | Effektiver Pfeil | Pub | @Lohanidamodar |
| Gehen | Effektiver Go | Geh und hol dir | @panz3r [@phaus] | |
| .NETTO | .NET CORE 3.1 | C# codierende Konventionen | Nuget | @komemi @torstendittmann |
| D | ? | Du? | ||
| Kotlin | 1.4.31+ | Kotlin Style Guide | Gradle, Maven | @entsagen |
| Java | 8+ | Google Style Guide | Gradle, Maven | @entsagen |
| Schnell | 5.5+ | Swift Style Guide | Swift PKG Manager | @entsagen |
| Docker Cli | Docker Hub | @Christyjacob4 |
Alle Code -Beiträge, einschließlich der Personen mit Bekanntheitsgrad, müssen eine Pull -Anfrage durchgehen und von einem Kernentwickler genehmigt werden, bevor sie zusammengeführt werden. Dies soll eine ordnungsgemäße Überprüfung des gesamten Codes gewährleisten.
Wir ziehen wirklich Anfragen! Wenn Sie helfen möchten, können Sie mehr darüber erfahren, wie Sie im Beitragshandbuch zu diesem Projekt beitragen können.
Die MIT-Lizenz (MIT) http://www.opensource.org/licenses/mit-license.php