Von Wolfgang Hauertmann am 21.04.2015 - 23:04
In diesem Beitrag wird eine sinnvolle Anwendung für Node.js auf dem lokalen Rechner dargestellt: eine Web-Browser gestützte Console mit GUI für die Steuerung von Automatisierungsaufgaben, wie sie beispielsweise im Zusammenhang mit Staging & Deployment, Maintenance und Continous Integration für die Web-Portal-Entwicklung typisch sind.
Viele weitere Anwendungsbereiche sind denkbar: Node.js-GUI's für
- Staging & Deployment, Continous Integration, Maintenance für die Webentwicklung (hatten wir schon, der Vollständigkeit halber hier nochmal),
- Medien (Heimkino, Media-Center),
- Synchronisation von Daten (lokal, LAN, WLAN, remote, Cloud, Firma, Kunden, Arbeitsplatz),
- Steuerung von Hardware, z.B. Arduino (Schule, Ausbildung, Hobby, CNC-Werkzeug-Steuerung),
- Steuerung von Haustechnik bzw. Internet der Dinge (Heizung, Strom, Energiemanagement, Licht, Alarm, Überwachung, Garten-/Balkonbewässerung).
In Folgenden wird nur eine Lösung für den ersten Punkt oben (Staging & Deployment, Continous Integration, ...) vorgestellt. Dieser wird zudem nicht vollständig ausgebaut, sondern so ausführlich beschrieben, dass jeder leicht seine eigenen Grunt-Aufgaben hinzufügen kann. Material als Anregung hierfür gibt es in diesem Weblog mittlerweile reichlich.
Von Wolfgang Hauertmann am 23.03.2015 - 12:09
Nach den ersten 5 Teilen dieser Reihe, die für Leser sicherlich nicht sehr komfortabel waren, hier nun die Dokumentation zum 3 Purpose Grid.
Dort gibt es jetzt endlich eine Download-Möglichkeit und natürlich jede Menge Kontext-Links auf die schon bekannte Demo.
Das responsive Dokumentationsportal wurde selbstverständlich auf Basis des 3 Purpose Grid (oder in Zukunft kurz P3-Grid) entwickelt und ist damit auch eine Demonstration des ersten Zwecks unseres Grid-Layout-Systems, nämlich die Entwicklung von responsiven Webportalen.
Als CMS für den Einsatz habe ich phpSQLiteCMS gewählt, ein schlankes aber durchaus respektables System, das ich sehr effizient mit meinem Grid-System einrichten konnte.
Von Wolfgang Hauertmann am 11.03.2015 - 13:42
Es gehört zur Philosophie des 3 Purpose Grids (Demo), dass nur wenige rudimentäre GUI- und Design-Elemente zur Verfügung gestellte werden, damit der Desinger bzw. Entwickler Freiraum für eine individuelle Gestaltung behält. Dies ist bei vielen CSS-Frameworks, wie z.B. Bootstrap anders. Dort werden viele ausgefeilte GUI-Elemente wie Tabulatoren, Buttons, Sliders, etc. implementiert, deren Verwendung dann allerdings dazu führt, dass ein damit erstelltes Produkt am Ende erkennbar auf einem Bootstrap-Framework aufsetzt. Wer also ein individualisiertes Produkt realisieren möchte, der muss entweder auf diese Elemente verzichten, was zu einem Overhead in den Sourcen führt oder aber z.B. mittels aufwändiger SASS-Modifikationen einen eigenen GUI-Style generieren, was allerdings sehr spezifische Skills erfordert und nicht ganz einfach sein dürfte. Dies soll aber mit unserem Grid-System nicht passieren.
Trotzdem können wir auf die Unterstützung weniger GUI- und Design-Komponenten nicht verzichten. Wir beschränken uns auf CSS-Unterstützung für:
- Menus,
- Medien,
- Info-Boxen,
- Formulare,
- Tabellen und
- Karten.
Andere machen daraus 6 Artikel. Ich packe hier alles in einen. Schließlich will ich ja auch mal fertig werden mit dieser Reihe.
Damit hätten wir dann den ersten Zweck unseres 3 Purpose Grid erreicht, nämlich die Verwendung als ganz normales CSS-Framework für Portale. Wir werden noch einige weitere Teile benötigen, um alle unsere Ziele zu erreichen.
Von Wolfgang Hauertmann am 10.03.2015 - 10:43
Das 3 Purpose Grid soll weniger durch viele Gui-Elemente glänzen, von denen man in der Praxis meist nur einen Bruchteil benötigt. Vielmehr soll es vor allem schlank und vielseitig sein und den Entwickler-Workflow unterstützen.
Auf zwei GUI-Elemente kann man aber nicht verzichten, wenn man schnell ein funktionsfähiges System als Ausgangspunkt für ein größeres Projekt aufsetzen möchte, auf:
- Navigationsmenus und
- Paginierung.
Unser System (Demo) wird deshalb im Folgenden um diese Ressourcen erweitert.
Von Wolfgang Hauertmann am 02.03.2015 - 10:34
Unser 3-Purpose-Grid soll Ausgangspunkt sein für eine Vielzahl kleinerer Projekte in diesem Weblog. Ziel ist es, sich dieses Grid (Demo) inklusive aller Ressourcen (Bash-, Grunt-Skripte, Cordova-Vorbereitung, vielleicht Testing, falls ich dazu komme, etc.) herunterzuladen, um dann sofort mit der Implementierung des eigentlichen Entwicklungsziels beginnen zu können. Es ist somit wichtiger Teil des hier praktizierten Workflows.
Deshalb stelle ich hier drei Header- und zwei Footersysteme vor, die man sich je nach Zielsetzung eines Projekts oder persönlichem Geschmack auswählen kann.
Von Wolfgang Hauertmann am 28.02.2015 - 16:22
Unser 3 Purpose Grid hatten wir in Teil 1 dieser Reihe rein statisch entwickelt. Wir werden es in diesem Beitrag durch Hinzufügen einer einzigen CSS-Datei responsive machen.
Außerdem werden wir bei dieser Gelegenheit ein kleines Javascript hinzufügen, mit dem wir unser Responsive-Layout ganz gut testen können.
Das Ergebnis kann man in dieser Demo bewundern.
Von Wolfgang Hauertmann am 27.02.2015 - 17:03
In der Einleitung zu dieser Reihe habe ich Grundsätzliches zum 3-Purpose-Theme geschrieben. Vor allem die Ziele des Systems standen dort im Vordergrund.
Hier, im ersten Teil der Projekt-Reihe zum 3-Purpose-Grid, wird das Layout entwickelt. Es wird dabei keine bestimmte Breite vorgegeben wie etwa bei dem bekannten 960er-Grid, sondern es lassen sich viele verschiedene Breiten und Anzahlen von Spalten miteinander kombinieren. Entscheidend ist, inwieweit die Breite durch die Anzahl der gewünschten Spalten teilbar ist.
Von Wolfgang Hauertmann am 27.02.2015 - 15:30
Ich habe mir überlegt, dass ich für die Projekte in diesem Blog ein einfaches, für alle Themen im Blog geeignetes Theme entwickle, so dass man zu Beginn eines neuen Projekts einfach diese Ressource herunterlädt und schon kann man sich auf die wesentlichen Punkte beim Nachvollziehen eines neuen Beitrags beschränken.
Das Theme, dass ich hier vorstelle, soll genau drei Zwecke erfüllen. Es soll geeignet sein für
- statische und responsive Portale (später auch als Drupal- oder Typo3-Themes),
- als Basis-Layout für hybride Apps als Alternative zu jQuery-Mobile und ähnlichen Frameworks und
- als GUI-Konsole für lokale NodeJS-Projekte.
Ich nenne es deshalb das 3-Purpose-Grid (Demo).
Das gesamte Projekt ist jetzt etwas aufwändiger geworden, zumal die notwendigen Überlegungen recht grundlegend waren. Den Aufbau beschreibe ich deshalb in mehreren Beiträgen. In diesem Beitrag erfolgt zunächst ein Überblick.
Von Wolfgang Hauertmann am 17.01.2015 - 15:01
Eine hybride Web-App für ein Blog oder ein ähnliches Medium zu entwicklen, ist mit Cordova - dem früheren PhoneGap - und NetBeans sehr einfach. NetBeans und das integrierte Cordova-Plugin generieren per Scaffolding alle erforderlichen Ressourcen, so dass wir nur eine einzige Zeile Source-Code benötigen, um unsere App zu realisieren.
Haben wir unser Blog nach den Prinzipien des Responsive Design entwickelt, funktioniert unsere App nicht nur technisch, sondern auch optisch sofort.