Projekte
ANMUTUNES
Dies ist mein erstes selbst initiiertes Open Source Projekt. Bis zur Erstveröffentlichung flossen über 800 Stunden Arbeit in die Entwicklung von ANMUTUNES. Es ist eine Alternative zu iTunes* und Apple Music* und kann deren Mediathek.xml importieren. *(iTunes und Apple Music sind eingetragene Marken von Apple Inc.)
Das Design orientiert sich an früheren Versionen von iTunes.
Ein Großteil der Funktionalitäten von iTunes und Apple Music sind von ANMUTUNES schon abgedeckt, und in
Zukunft werden es noch mehr.
Darüber hinaus unterstützt ANMUTUNES, dank der Nutzung von VLCs Programmier-Bibliothek, jegliche von VLC
abspielbaren Audioformate.
Somit ist es möglich FLAC und andere von iTunes und Apple Music nicht unterstützten Audioformate in der
Mediathek hinzuzufügen und abzuspielen.
Generell ist ANMUTUNES darauf ausgelegt mit großen Mediatheken zurecht zu kommen. Es wurde mit meiner eigenen Mediathek ausgiebig getestet und konnte problemlos mit mehr als 35.000 Titeln zurecht kommen. Schon einige Wochen vor der Erstveröffentlichung war es für mich als Ersatz für iTunes und Apple Music geeignet und wurde täglich genutzt um Musik zu hören.
In Teilen der Entwicklung wurde eine lokal gehostete Version des devstral:latest LLM von Mistral AI ausgeführt via ollama. Das LLM wurde hin und wieder genutzt um Boilerplate Code zu schreiben und für Inspiration, ansonsten kam es vor allem zum Einsatz um verschiedene Übersetzungen zu generieren. Der absolute Großteil des Codes ist von mir selbst handgeschrieben, weniger als 5% sind LLM generiert.
Es war mir wichtig, dass ANMUTUNES in verschiedenen Sprachen verfügbar ist.
Für Deutsch und Englisch wurden die Texte alle von mir selbst erstellt.
Alle übrigen Sprachen wurden mit Devstral generiert.
Zum Zeitpunkt der Veröffentlichung sind folgende Sprachen unterstützt:
Tschechisch, Dänisch, Deutsch, Griechisch, Spanisch, Französisch, Italienisch, Japanisch, Koreanisch,
Luxemburgisch, Niederländisch, Polnisch, Portugiesisch, Türkisch, Chinesisch.
Für die weitere Entwicklung würde ich mich über Pull Requests freuen.
Ansonsten kann man mich unter folgendem Link mit einer Spende unterstützen:
PayPal
Technologien
Rust, SQLite, Svelte, TypeScript, HTML, CSS, VLC, Devstral LLM, i18next, Lucide, FreeCad für parametrische Icons/Logos, Krita für Bildbearbeitung
Demo Video
Cooklang Rezepte
Die Webapp wurde zum anlegen und verwalten von Rezepten im Cooklang Textformat entworfen. Über das Menü auf der linken Seite lassen sich alle Rezepte nach Kategorien filtern, und nach Namen suchen. Einem Rezept kann optional ein Bild beigefügt werden. Die Webapp passt sich an den Bildschirm an um auf beliebigen Endgeräten komfortabel nutzbar zu sein.
Technologien
HTML, CSS, JavaScript, Websockets, Protobuffer, ExpressJS, SQLite, Docker
Live Demo
IoT Lampen
Diese Lampen wurden von mir initial in 2017 entworfen und gebaut. Mittlerweile existieren sie in der 3. Hardware-Iteration. Sowohl die auf dem ESP8266 laufende Software als auch der Code für die Website wurden von mir über die Jahre mehrfach um- oder neu-geschrieben, modularisiert, und erweitert.
Über die Website kann man entweder eine beliebiege RGB Farbe auswählen, oder eine von 12 verschiedenen Animationen. Hervorzuheben sind hierbei die Sunset und die Lava Animation.
Für den Sonnenuntergang kann man aus 3 Visualisierungen wählen und eine Uhrzeit festlegen zu welcher die Lampen einen Sonnenaufgang simulieren sollen. Nach der Aktivierung läuft die gewählte Visualisierung bis die Lampe nach 5 Minuten aus geht.
Die Lava Animation ist ein World-First und implementiert, so nah wie möglich, eine Partikel basierte Echtzeit-Physik-Simulation einer Lavalampe mit freier Farbwahl für die Lava und das Wasser.
Technologien
Fusion360, ESP8266, WS2812, C++, Svelte, TypeScript, Protobuffer, Websockets, OTA-Updates
Lava Animation
Website
Musik Visualisierung
Dieses Projekt ist inspiriert von anderen Musikvisualisierungen, war aber vor allem ein Vorwand um OpenGL zu lernen, und ist innerhalb von etwa 7 Tagen entstanden. Darin habe ich mit einem stark modifizierten Boids Algorithmus experimentiert, welcher Fouriertransformationen nutzt zur Echtzeit-Visualisierung von Audio, bzw. Musik. Das Programm erlaubt es während der Laufzeit Audiodateien zu laden und diese abzuspielen. Die folgenden Aufnahmen sind komprimiert, wodurch die visuelle Qualität etwas abnimmt.
Technologien
C++, OpenGL, GLFW, GLM, SFML, FFT
Anonymous Artist - Cosmonauts
Anonymous Artist - Fata Morgana
Anonymous Artist - Exhale
Rewilding The Night - Data Explorer
Dieses Projekt ist in einem stark begrenzten Zeitrahmen von 40 Arbeitsstunden entstanden. Ich habe mich hierfür in InfluxDB eingearbeitet und dann verschiedene Skripte zur automatisierten Daten-Aggregation und -Aufbereitung, sowie für den Upload zu Wordpress geschrieben. Sowohl die Skripte als auch der daraufhin von mir entwickelte Data Explorer mussten mit unvollständigen Daten umgehen können. Dies war notwendig, da die im Projekt verwendeten Sensoren aufgrund der Witterungsbedingungen nicht immer erreichbar waren. Zudem habe ich technischen Support geleistet bei verschiedensten Fragen rund um Wordpress, Windows, Remote Access, Hosting und Domains, und Website-Umzug zwischen Hosting Anbietern.
"Andreas was part of the interdisciplinary and collaborative project Rewilding the Night at the University of Bonn. Rewilding the Night is an experimental project that brings together Internet of Things (IoT) sensors, data analysis, and novel visualisation techniques to explore the impacts of light pollution and offer new engagements with urban nights. Andreas developed a key component of the project, namely a unique Data Explorer that offers an interactive interface for viewing and analysing sensor data. In consultation with the project leads, Andreas led the conceptualisation, software development, and implementation of the Data Explorer. More generally, he was a valuable asset to the team throughout the project, for example in helping to set-up the data collection process and website." - Taylor Stone
Technologien
Python, InfluxDB, JavaScript, Plotly