Stellen Sie sich ein Tool vor, mit dem Sie beliebige Daten in ... beliebige Daten umwandeln können.
Das am besten zugängliche Beispiel ist Bilder. Was ist, wenn ich ein Bild einer bestimmten Größe machen und irgendwo ein Wasserzeichen (auch eine bestimmte Größe) platzieren möchte?
Und hier ist ein Beispiel dafür, wie dies
aussehen könnte :

PS: Dies ist ein Übersichtsartikel. Wenn es interessant ist, werde ich die Ansätze genauer beschreiben.
Motivation
Vor kurzem, im November 2018, musste ich die Größe eines Fotos ändern ...
Online-Dienste machten diesen Prozess aufgrund ihrer "Funktionen" (Werbung, eine seltsame Oberfläche usw.) so schmerzhaft wie möglich.
Die Standard-Windows 10-Tools schienen mir nicht offensichtlich zu sein. Ich musste GIMP herunterladen und von dort aus alles tun, was nötig war - um die Größe des Fotos zu ändern.
Zu meiner Verteidigung:
- Zeitpunkt des Auftretens des Problems ~ 1 Uhr morgens (1 Uhr morgens)
- Es war kein funktionierender Laptop zur Hand
- Windows ist nur für Spiele zu Hause. Jetzt schreibe ich manchmal Code mit einer Apple-Tastatur

Und dann entschied sich ein anderer Programmierer, ein anderes Knochenwerkzeug zu erstellen.
Anforderungen
Dieses Werkzeug sollte alle Krücken Krücken sein:
- Einfache Benutzeroberfläche
- Einfache API
- Bequeme Organisation von Projekteinheiten
- Minimale Schaltflächen und Einstellungen
- Die Fähigkeit, ihre ... "Standards" umzusetzen
- Open Source: Backend und Frontend
Und vor allem: Jeder, der versteht, was er will, sollte es nutzen können.
Mehrere mögliche Sequenzen:- Bild, Bild kleiner, Filter
- Laden Sie URL-Inhalte herunter, lassen Sie nur nützliche Inhalte, lassen Sie nur Text
- Laden Sie ein Bild herunter und stellen Sie fest, dass sich ein Objekt darauf befindet (Vorlagenübereinstimmung).

Implementierung
Kürzlich auf Habré gelesen
Es ist notwendig, zu Microservices heranwachsen zu müssen ... und beschlossen, diesem zu folgen. Es gab bereits einige Versuche, so etwas durch „schöne“ (meiner Vorstellung nach) Strukturen zu tun: Jede Funktion (wie
template_match ,
md5 ) ist wie ein für die Lösung ihrer Aufgabe optimierter Mikrodienst. Infolgedessen wird alles dazu kommen, aber nicht heute :)
Insgesamt verfügbar:
- Frontend ohne schöne Tapeten
- Backend-API
- Sellerie (in der lokalen Entwicklung verwende ich Redis und im Test und Prod RabbitMQ)
- Backend-Mitarbeiter
Ich werde gleich sagen: Ich bin jedoch dank Stackoverflow und Google-Suche sehr mittelmäßig mit Frontend.

Weitere Beispiele
Alle Beispiele finden Sie
hier , sie werden zu „Projekten“ zusammengefasst.
Eine davon: Extrahieren von Text aus einer HTML-Seite
Achtung : Die Site arbeitet im schreibgeschützten Modus, das Ergebnis wird jedoch an Sie zurückgegeben. Er kann Ihre Änderungen an Projekt und Pipeline nicht speichern.
Eine kleine Erklärung
Eine Liste, was Daten transformieren kann:
hierWas dieses Projekt nicht ist:
- Data Warehouse
- Bitcoin Miner
Das Projekt ist sehr ähnlich zu:
- Zapier
- Yandex Nirvana
- Parse.com (ein paar Jahre von Facebook gekauft)