summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-03-06icon: Add Linux icon generationxengineering
Since SVG files are optionally in Linux PNG files in multiple resolutions are a good fallback to support Linux. Thus in addition to icon/main.svg a Linux packager might use these generated PNG files.
2026-03-06icon: main.svg: Hide safe zonexengineering
An icon designer can enable this item to work on the icon. But for the build process it is easier to have it like that by default because Inkscape seems not to be able to select elements by ID in SVG export while this works for PNG.
2026-03-04Run flutter_launcher_iconsxengineering
This propagates icon files to the Android-specific source tree.
2026-03-04Document icon maintenance in READMExengineering
2026-03-04Add flutter_launcher_iconsxengineering
This tool allows to update icon files deep inside the source trees of the different platforms.
2026-03-04icon: Generate Android filesxengineering
2026-03-04icon: Add convert.py for Android Adaptive Iconsxengineering
Android Adaptive Icons allow the OS to display the icon in different variations and styles. For this to work Android requires PNG images with e.g. only the foreground or only the background. The added script can generate these files from main.svg. [1]: https://developer.android.com/develop/ui/views/launch/icon_design_adaptive
2026-03-04icon: Add icon as main.svgxengineering
This Inkscape file is the primary source file where the icon is designed.
2026-03-04Adapt to new black-based Python stylexengineering
This adapts to the style recommendations from the tool `black` checking the Python code of this repository. This makes the scripts clean again.
2026-01-17android: Add network permissionxengineering
This is required for the MQTT connection.
2026-01-17Protect bottom bar with SafeAreaxengineering
On Android the bottom bar with the connection state used to be hidden by the three Android navigation buttons.
2026-01-17Indicate disconnected Sia serverxengineering
There are now three instead of two status states: - "Connected" / MQTT connected, Sia server connected - "Connection issue" / MQTT connected, Sia server disconnected - "Disconnected" / all other cases (Sia server connection unknown)
2026-01-17Add automatic reconnectingxengineering
This allows to use the app after a temporary disconnect between app and MQTT broker.
2026-01-17Display MQTT connection statusxengineering
The user otherwise cannot trust the state of the contacts because the app could just be disconnected from the broker.
2026-01-16Move Scaffold up to UI classxengineering
That balances the scopes of UI and ContactList better and allows to add more Widgets on the UI level.
2026-01-16Document links to widget and icon websitesxengineering
2026-01-15Set contact states based on MQTTxengineering
This is already the minimal viable product (MVP) for this app.
2026-01-11Add const MQTT connection optionsxengineering
2026-01-11Switch to Map address to state for contactsxengineering
This map should be empty in the future and updated based on the incoming MQTT messages. A list was not the correct data structure for that since it requires to iterate over the whole list to find the entry with a certain address. But this is required to update the state of an already known contact.
2026-01-11Fix indentationxengineering
2026-01-10Re-introduce timer-based state togglingxengineering
This is now done with the refactored code organization and a strict UI / data split.
2026-01-10Move state to data.dartxengineering
The UI should not store the application logic state.
2026-01-05Split code into three Dart filesxengineering
This follows recommendations [1] from the flutter documentation. [1]: https://docs.flutter.dev/app-architecture/concepts
2026-01-05Rename to `UI`xengineering
2026-01-03Make one contact toggle with timerxengineering
This demonstrates that the state of the contacts in the UI can be changed at runtime.
2026-01-03Make ContactList a StatefulWidgetxengineering
This is required to change the contact states during runtime.
2026-01-03Add check.pyxengineering
This is one script which checks the code quality of Python and Dart sources. It can be symlinked as `.git/hooks/pre-commit` to guard commits of questionable quality.
2026-01-03Make analysis_options.yaml more strictxengineering
This should help writing good flutter / Dart code from the beginning.
2026-01-03Specify Dart types explicitlyxengineering
This makes the code more readable.
2026-01-02Rename to ContactListxengineering
The old name MainPage did not explain a lot.
2026-01-02Add mqtt_client v10.11.3 dependencyxengineering
This library is the currently most often downloaded MQTT library on pub.dev. This is at least a good starting point.
2026-01-02Implement dummy `Contacts` UIxengineering
This demonstrates how the UI should look like. The data is just for visualization and never changes. Functionality is added later.
2026-01-02Switch to friendly name `Sia`xengineering
Displaying the more technical name `sia_app` in the title bar is not suitable.
2026-01-02Update dependencies with generate.pyxengineering
2026-01-02Add generate.pyxengineering
This makes it easy to re-generate the files provided initially with `flutter create`.
2025-12-23Document usagexengineering
2025-12-22Create flutter projectxengineering
This was done using the following command. flutter create \ --description "Sia app" \ --org "eu.xengineering" \ --project-name "sia_app" \ --platforms linux,android \ --empty \ .
2025-12-22Add LICENSE.txtxengineering