Verwendete Werkzeuge, Dienste und Techniken
Die Erstellung von Websites besteht aus vielen Teilaufgaben. Zu einer effizienten Durchführung dieser Arbeiten dienen geeignete Werkzeuge, Dienste und Verfahren. Die wichtigsten von mir eingesetzten sind:
- PhpStorm, Bootstrap Studio und PyCharm als Entwicklungsumgebungen
- Github Copilot als Programmier-Assistenz
- ChatGPT+ für Recherchen
- PhpMyAdmin und SQLiteStudio als Datenbank-Frontends
- Web-Application-Framework Symfony mit objekt-relationalem Datenbank-Mapper Doctrine als Basis für Web-Anwendungen
- JavaScript/Typescript und Vue.js für interaktive Website-Inhalte
- Webpack (node.js) zur Kompilierung von SCSS und JavaScript/TypeScript
- Git und Git Extensions for Windows zur Versionsverwaltung
- PyTest, PhpUnit und Selenium für die Durchführung automatischer Tests
- CSS HTML Validator zur Verifikation des HTML/CSS-Codes der fertigen Websites
- Freeplane, Typora und phpDocumentor für die Erstellung von Dokumentationen
- Adobe Lightroom, Photoshop und Luminar AI für die Bildbearbeitung
- Inkscape, Adobe Illustrator und Adobe Fireworks für die Erstellung von Grafik-Elementen
- Blender für die Anfertigung von Animationen
- Check der erstellten Websites mit den Browsern Mozilla Firefox, Google Chrome, Microsoft Edge und Apple Safari
- Lambdatest zum Testen der Websites mit Apple-Safari auf MacOS, iPhone und iPad
- Probas (von uns entwickelt auf Basis von Symfony) für die Projektverwaltung, Zeiterfassung und Rechnungsstellung
- Acronis Cyber Protect (Windows) sowie Relax-and-Recover und Borg Backup (beides Linux) zur Datensicherung
- TeamViewer zur Online-Unterstützung meiner Kunden
Für unseren Entwicklungs-Server verwenden wir Debian Linux mit Docker und Docker-Compose. Darin hat jede Website einen individuellen Docker-Stack mit Web-Server Apache, PHP mit Xdebug, node.js und Datenbank MySQL. Die Verwaltung der Docker-Stacks erfolgt mit einer von uns in der Programmiersprache Python programmierten Web-Oberfläche.