?️
·
·
?️?️️ ·
?️?️ · · · ?️
?️?️️
Einfach zu bedienende Event- und Middleware-Framework, von beliebten Mikrobibliotheken angetrieben und auf PSRs basiert.
Unterstützt PHP 8.1+ und Komponist
Schnellsprung in die Entwicklung:
composer create-project orbiter/satellite-app ./satellite
cd ./satellite
# create `.env` file,
# add for local-dev: `env=local`
touch .env
# start PHP Dev Server
cd web && php -S localhost:3333 ./index.php display_errors=0
# or point the Apache Root to `/web/`
# or point the NGINX entry to `/web/index.php`
# or use Docker: `docker-compose up`Öffnen Sie Ihren Browser auf: http: // localhost: 3333
Schauen Sie sich Dateien an:
config mit App -Konfiguration und Verkabelungassemble.php Composer Autoload, sammelt Konfigurationen und erstellt die Systemmodule aus dieser Konfigurationlaunch.php läuft assemble() und sendet das SatelliteApp -Event abapp -Ordner mit grundlegenden Befehlen und Routenhandlerstruktur Installieren Sie das App -Skelett und die Abhängigkeiten mit Komponisten im Ordner satellite :
# with composer installed on machine:
composer create-project orbiter/satellite-app satellite
# with composer and docker on windows:
docker run -it --rm -v %cd%/satellite:/app composer create-project orbiter/satellite-app .
docker run -it --rm -v %cd%/satellite:/app composer create-project --stability=dev orbiter/satellite-app:dev-master .
# with composer and docker on unix:
docker run -it --rm -v ` pwd ` /satellite:/app composer create-project orbiter/satellite-app .
docker run -it --rm -v ` pwd ` /satellite:/app composer create-project --stability=dev orbiter/satellite-app:dev-master .
# go into project folder:
cd ./satelliteRennen mit:
Richtige Benutzerrechte einrichten, dann starten und öffnen Sie http: // localhost: 3333
chmod +x start.sh
./start.shFühren Sie definierte Befehle aus.
php cli < command > < ..attr > < ..b >Enthält konfigurierbare PHP DockerFile mit:
pdo ) Für Docker -Bildkonfigurationen siehe Dateien in _docker und _nginx .
Start Container in docker-compose.yml , dann geöffnet: http: // localhost: 3333
docker-compose up
# open shell in app container
docker-compose exec app sh
# run command in temporary worker container
docker-compose run --rm worker php cli demo
# run extra composer container on windows:
docker run -it --rm -v %cd%:/app composer dumpautoload
# run extra composer container on unix:
docker run -it --rm -v ` pwd ` :/app composer dumpautoload
# run tests with temporary `app` container:
docker-compose run -T --rm app sh -c " cd /var/www/html && ./vendor/bin/phpunit --testdox tests "
# running tests with a temporary `phpunit` in a prebuild container:
docker run -i --rm bemiteu/satellite-app:master sh -c " cd /var/www && wget -O phpunit https://phar.phpunit.de/phpunit-9.phar && chmod +x phpunit && cd html && /var/www/phpunit --testdox tests " Auf einem Webserver dient die Datei web/index.php als öffentlicher Einstiegspunkt.
Apache: Point Server /Vhost Root to /web und verwenden Sie das enthaltene .htaccess
Nginx : Beispieldateien in _nginx.
Verwenden Sie EG .env um die Konfiguration hinzuzufügen.
Die Konfiguration von Standard enthält:
env : Wenn in Produktion oder nicht in der Produktionprod wird in der App (nicht im Rahmen) angenommen, dass es in der Produktion ist$_ENV['env'] === 'prod' um die Produktion zu überprüfendev.editor mit einem Wert von PrettyPageHandler::EDITOR_* hinzu, um whoops "Open Datei" mit IDE zu verknüpfen/config/config.php - Hauptkonfiguration/config/dependencies.php - Definitionen für Php -Di/config/events.php - Definieren von App -Komponenten Fluss/config/pipeline.php - Setup PSR Middlewares und Pipeline Diese App dient als Mini-Framework, mit PSR-betriebenen Bibliotheken, befriedigenden Annotationen und nicht viel mehr.
Es basiert auf PSRs und beliebten, spezialisierten Paketen, die sie oder andere großartige Dinge implementieren.
monolog/monologrequire_once{cache/filesystem-adapterFilesystemCachePoolNormalized für DoctrineCommonAnnotationsPsrCachedReader -Kompatibilitätnyholmpsr7PSR-15 , PSR-17 und PSR-18 weiter verwendetphp-di/php-di@Annotations , @var PHPDOC und Reflexionsunterstützungorbiter/satelliteorbiter/satellite-responsecache/filesystem-adapternyholmpsr7guzzlehttp/guzzle? = in der
satellite-appVorlage enthalten
orbiter/satelliteorbiter/satellite-consoleorbiter/satellite-responseequip/dispatch , PSR-11- konformnyholm/psr7 und nyholm/psr7-servernarrowspark/http-emitterorbiter/satellite-routeorbiter/annotations-utildoctrine/annotations mit zwischengespeicherten Überlegungenorbiter/satellite-whoops$_ENV['env'] nicht prod (konfigurierbar in assemble.php )orbiter/satellite-configorbiter/satellite-launchSatelliteApp -Ereignisdatenobjekteorbiter/satellite-system$config zu einem zwischengespeicherten PSR-ContainerViele Arbeiten für APIs erfolgen von PSR-15 HTTP Middleware und finden Sie weitere großartige Middlewares.
Es gibt keine herunterladbare Version - siehe Setup, um mit Composer zu installieren.
Wir verwenden Composer als Paketmanager, wie in jedem modernen PHP -Projekt.
Wenden Sie sich gerne nach einer Trainingsanfrage.
Dieses Projekt ist eine kostenlose Software, die unter der MIT -Lizenz verteilt ist.
Indem Sie Ihren Code für das Code -Repository festlegen, erklären Sie sich damit einverstanden, den Code unter der MIT -Lizenz, die dem Repository beigefügt ist, zu veröffentlichen.
Pflege von Michael Becker