Ontwikkel je API met behulp van Open Source!

Steeds meer bedrijven, van klein tot groot, hebben de toegevoegde waarde van Open Source software ontdekt. Ook binnen de API community is Open Source een hot item, wat ervoor heeft gezorgd dat er een enorm aanbod is ontstaan van specs, frameworks, libraries en tools.

Een mooi voorbeeld van een project dat de afgelopen jaren enorme adoptie heeft opgebouwd is Swagger. De Swagger spec is een representatie, op basis van JSON objecten, waarmee je een API beschrijft, onafhankelijk van de taal waar deze in wordt gebouwd. Wat oorspronkelijk startte als een project om eenvoudig nette documentatie te kunnen genereren op basis van een aantal JSON bestanden, is de afgelopen jaren uitgegroeid tot een volledige set aan standaarden en tools. Zo is het tegenwoordig mogelijk om op basis van je Swagger specificatie automatisch test-scripts, client libraries en zelfs de basiscode voor een API te genereren.

Ook voor het daadwerkelijk ontwikkelen van een API zijn er volop waardevolle hulpmiddelen te vinden. Binnen de Node.js community zijn er bijvoorbeeld Loopback, Sails.js en Restify. Door gebruik te maken van dit soort frameworks worden heel veel standaard zaken (authenticatie, foutafhandeling, content negotiation, etc) uit handen genomen en hoef je je puur nog te focussen op de applicatie-specifieke details.

Eén van de grote voordelen van Open Source is het feit dat de broncode vrij toegankelijk is, wat een ontwikkelaar de gelegenheid biedt om zelf aanpassingen te doen in deze broncode. Natuurlijk is het zo dat niet alle aanpassingen zich ervoor lenen om terug gecontribueerd te worden (als het gaat om een specifieke implementatie). Echter, als het project van dusdanige kwaliteit is, zou door middel van configuratie of middleware patterns (voorbeeld) de ontwikkelaar in staat moeten zijn in te haken op de code zonder het project zelf te raken.

Bij Apiwise zijn wij groot fan van Open Source. Wij zijn dan ook gemotiveerd om actief bij te dragen aan de API community door mee te werken en te ontwikkelen aan API-gerelateerde Open Source projecten. Het eerste project is reeds gerealiseerd: een Docker image voor het draaien van Allegrograph software. Op ons Github account vind je bovendien de broncode van onze website, die door middel van Github Pages volledig Open Source is: https://github.com/apiwise.