laravel-integrations

PHPPackageOpen Source

Projekt: laravel-integrations

Disclaimer: Dies ist das zweiter Projekt, welches ich hervorheben möchte neben dem Cognitor und welches während meiner Zeit bei anny entstanden ist.

TL;DR:

Problem:

  • Bei der Entwicklung von Integrationen für SaaS Applikationen doppelt sich schnell die gleiche Funktionalität bei verschiedenen Integrationen: Authentifizierung, Fehlertracking, usw…

Beschreibung:

  • Jede SaaS App heutzutage muss Integrationen zu anderen Systemen aufbauen, um von Usern angenommen zu werden
  • Integrationen haben viele Gemeinsamkeiten, die man nicht immer wieder neu entwickeln möchte
  • Aus diesem Grund ist dieses Package entstanden
  • Implementiert folgende Features, damit diese nicht für jede Integration neu geschrieben werden müssen
    • Integration Model
    • Aktivierung & Deaktivierung von Integrationen
    • Authentifizierung: Access Token & OAuth2
    • Exception Handling
    • Commands um Integration zu erstellen
    • Verschlüsselungen von bestimmten Daten für die Integration
    • Webhooks
    • Erstellung von Routen
  • Das Package nutzt das Service Provider Konzept von Laravel

Umsetzung:

  • Laravel Package mit PHP

Ergebnis:

  • Mit dem Package wurden sehr viele Integrationen bei anny entwickelt
  • Es ist sehr flexibel, verschiedene Integrationen realisiert wie Office365, Google Calendar, verschiedene Schließsysteme, usw…

Was habe ich gelernt:

  • Abstraktion von Integrationen
  • Verstehen, was in ein Package genommen werden kann und wie man es dem Entwickler zur Verfügung stellt