Simple Node.js Boilerplate

Jedes Projekt von Grund auf neu zu entwickeln kostet wahnsinnig viel Zeit. Zum Glück gibt es Boilerplates. Hierbei handelt es sich um einen Grundsetup für Euer Projekt. Dieses Grundgerüst kann man entweder selbst für sich zusammen stellen oder man greift auf eines der zahlreichen Projekte bei Github zurück. In diesem Artikel stelle ich Euch heute eine einfache Boilerplate vor, welche ich für meine Node.js-Projekte verwende.

Der Inhalt

Anders als viele gängige Boilerplates verwende ich weder Grunt, noch Gulp, noch irgendein anderes Build-Tool. Statt dessen vermeide ich diese zusätzlichen Overhead und verwende für den Workflow nur NPM-Skripte.

Die Kompilierung von ES6 zu ES5 wird über Babelify realisiert. Mocha & Chai nutze ich als Test-Frameworks für Unit-Tests. Die Code-Coverage wird dabei von Istanbul erstellt, die Dokumentation via Esdoc. Jshint wird als Linting-Tool verwendet, natürlich ist auch eine entsprechende Konfiguration vorhanden. npm-watch wird schließlich verwendet um eine automatische Kompilierung zu ermöglichen.

Die Struktur

Das Boilerplate kommt mit einigen wenigen Ordnern aus:

  • src: Hier befinden sich alle unkompilierten JavaScript-Dateien.
  • src/config: Sofern notwendig, beinhaltet dieser Ordner die Konfiguration.
  • test: Beinhaltet alle Test-Spezifikationen.
  • documentation: Die generierte Dokumentation landet in diesem Ordner.
  • coverage: Der Test-Coverage-Bericht wird in diesem Ordner abgelegt.
  • dist: Beinhaltet die kompilierten JavaScript-Dateien.

Der Workflow

Die folgenden Skripte sind verfügbar:

  • compile: Kompiliert die gesamte Applikation. Ist vor allem als Skript für den Watcher gedacht.
  • test: Lässt alle Tests durchlaufen.
  • docs: Erstellt die Dokumentation und den Code-Coverage-Bericht.
  • watch: Startet die automatische Kompilierung.
  • reinstall: Ist manchmal notwendig, wenns irgendwo hängt. Entfernt alle Node-Module und stößt die Installation nochmal neu an.

Jedes Skript könnt ihr mit npm run [Name des Skriptes] ausführen (ohne eckige Klammern versteht sich).

Den Source-Code für die Boilerplate findet Ihr wie gewohnt auf Github:
https://github.com/christianhanne/simple-nodejs-boilerplate


Kommentare


Wichtig: Durch den Click auf die obige Checkbox stimmst Du ausdrücklich der Übertragung von Daten an Facebook zu. Die Zustimmung erfolgt einmalig für die Kommentare dieses Artikels und wird nicht gespeichert. Weitere Details kannst Du dem Punkt Social Plugins der Datenschutzerklärung entnehmen.