Und noch ein JavaScript-Framework

Feathers 2.0: Quelloffenes Framework verspricht Echtzeitanwendungen in Rekordzeit

Michael Thomas

© Shutterstock.com/Sergey Nivens

Feathers 2.0, das sich selbst als minimalistisches und gleichzeitig flexibles JavaScript/Microservice-Web-Framework für Node.js bezeichnet, positioniert sich als Plattform für die Erstellung von Echtzeit-Anwendungen und -APIs. Dabei verspricht Feathers eine Entwicklung in Rekordzeit: Prototypen sollen in Minuten, flexible, skalierbare und für den produktiven Einsatz bereite Applikationen innerhalb von Tagen realisierbar sein.

Durch den Einsatz von ECMA Script 2015 (ES6) stehen Entwicklern die neuesten JavaScript-Features zur Verfügung. Trotz der insbesondere zuletzt zu beobachtenden Flut an neuen JavaScript-Frameworks hat Feathers 2.0 der Ansicht seines Schöpfers Eric Kryski zufolge durchaus eine Daseinsberechtigung. Demnach ist das Framework kein bloßer Rails-Klon, sondern vielmehr ein ganz besonderer Vertreter seiner Art: Statt des typischen MVC-Musters fördert Feathers demnach eine serviceorientierte Architektur, die im Zusammenspiel mit Cross-Cutting Concerns die schnelle und codesparende Entwicklung komplexer Echtzeitanwendungen und REST-APIs ermöglichen soll.

Das selbst aus nur wenigen hundert Codezeilen bestehende Feathers hat sich auf die Fahnen geschrieben, Entwicklern den Übergang von einer monolithischen zu einer Microservice-basierten Anwendungsentwicklung zu erleichtern. Feathers dient als Wrapper für das Node.js-Framework Express, die JavaScript-Bibliothek Socket.IO und das Echtzeit-Framework Primus.

Das Herzstück von Feathers wird von den Services – einfachen JavaScript-Objekten – gebildet, die über die Methoden find, get, create, update, patch und remove die grundlegenden CRUD-Operationen ermöglichen. Zahlreiche Ressourcen, darunter externe APIs und Datenbank-Ressourcen, sollen sich diesen Aktionen zuordnen lassen; durch „einhaken“ in die CRUD-Aktionen sollen benutzerdefinierte Funktionen realisierbar sein. Da die CRUD-Funktionalität über Services geboten wird, stellt Feathers zudem ein RESTful- und ein Echtzeit-API via Websockets über HTTP/HTTPS automatisch bereit.

Feathers kann Kryski zufolge als komplett Client-agnostisch betrachtet werden und arbeitet demnach mit jedem clientseitigen Framework zusammen, besonders gut allerdings mit React, Angular und React Native. Zudem ist Feathers Datenbank-agnostisch: Zu den mehr als 15 unterstützten Datenbanken zählen Postgres, MySQL und MongoDB. Last but not least bietet Feathers 2.0 eine Reihe optionaler Plug-ins, feathers-authentication beispielsweise dient der REST- und Websocket-Authentifizierung mit JSON Web Tokens und PassportJS.

Feathers 2.0 steht unter MIT-Lizenz und kann per Node Package Manager installiert werden.

Aufmacherbild: white feathers flying in air von Shutterstock / Urheberrecht: Sergey Nivens

Verwandte Themen:

Geschrieben von
Michael Thomas
Michael Thomas
Michael Thomas studierte Erziehungswissenschaft an der Johannes Gutenberg-Universität Mainz und arbeitet seit 2013 als Freelance-Autor bei JAXenter.de. Kontakt: mthomas[at]sandsmedia.com
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: