I now added a UI for the new API. It still needs more refinement but I like the Initial Design. Clicking on a Bar shows you, which Check-Ins have said tag set. The rightmost bar also shows Check-Ins with no Tag Value assigned.
I now added a UI for the new API. It still needs more refinement but I like the Initial Design. Clicking on a Bar shows you, which Check-Ins have said tag set. The rightmost bar also shows Check-Ins with no Tag Value assigned.
I updated the API to show more Information. More specifically, it now shows Journeys, that did not have a specific tag set at all and it shows which Journeys had a Tag Value.
Now I just have to implement this in the UI…
I removed the import-tree dependency in my nixos config so users need to download less inputs 🎉
It took some time because it was a bit difficult to reimport each file but I did it :)
I tried to darken the whole scene and add a flashlight… But I spent over 1 hour debugging the gradient and trying to get it to get darker on the way of the light but IT JUST DOESNT WORK :((((
Oh well…
As I am writing this, Träwelling is having scheduled maintenance. I can’t really test, what I’ve done but I tried to improve the CSS a bit…
I am trying to orient the UI a bit after https://fabian-c.github.io/Traewelling-Maps. And while that appears to be Vibe Coded, I don’t think mine counts as vibe coded if I just steal some CSS Variables from it, right? right?
I started working on the Frontend. My final plan is to make this look at least a bit decent but I am not good at design… (Please dont look at the Icon of Mover, pleasseeee)
Anyways, I find it interesting to visualize my Check-Ins for the first Time. I am very amazed that I spent 35 Hours over the last 356 Days in Stadler Flirts alone…
Uhhmmm yeah here is a random Graph I guess…
This is just the default template of Chart.js, the Library I am going to use for the Frontend.
But actually displaying this took longer than I wanted. It took me quite a long time for the HTML File to be included in my Python Wheel. Because of that, Flask was not able to find the File to render it…
Apparently, MANIFEST.in is more or less obsolete and I had to specify these files in the pyproject.toml. Also, the Frontend now lives in a subdirectory of the Python Code, not at the root of the project…
It is starting to work! The API can now return the number of Check-Ins for a specific Tag Value!
However, there are no filters or any other advanced features…
I am trying to build traewelling-tagtistic.
Träwelling is a Social-Platform, where you “Check-In” to public transit services.
You can also set Tags to, for example, show what Train Model you are currently riding.
traewelling-tagtistic is going to be a Website, where you can see various Statistics about these Tags.
For now however, I get a 400 Bad Request from the Träwelling API if I use Python requests. However, it works from Firefox… 🤔
I started building BootISO, an EFI application to boot ISO images from GRUB/rEFInd, the EFI shell, or (on some systems and probably not really viable), the Boot Options menu.
Currently, it opens a file handle to an ISO file, which in further development will be copied to a ramdisk, which can then hopefully be used for booting. Unfortunately, neither OVMF nor my laptop seem to support Simple File System, so I’ll need to check how to load the file instead.
Up to there, there aren’t any errors, so I feel quite confident, although a debugger might end up coming in handy …
I’ve gotten used to the architecture of the UEFI crate by now, which should probably speed up development and reduce AI usage further along.
(edit: it turns out I accidentally used the LoadedImage handle to initialize SimpleFileSystem 🤦)
You can now change the Transport Types that the Application will use for Routing! For me, this is very practical because I am not able to take High-Speed Rail with my Ticket here in Germany.
For some reason though, the Application had some performance-issues recently. I will have to investigate this further…
I have started on implementing a Settings-Screen. Right now, it only offers you to reset Mover but it should also be possible to change the Transport Types using it (i.e. disabling High Speed Rail or Coaches from Routing Results)
I added a :like command! You can now like checkins using :like <index>, where you can find the index beside the username in the checkin header!
You can now Bookmark your Journeys for Quick Access!
Thanks to Jetpack Compose (I really, really love it) it was pretty easy and even works offline! I am still thinking on how I can improve this because you do not actually see the Destination of your Journey in the HomeView yet..,
I added a View to actually see the suggested Route. I stole most of the Code from the “Entire Journey”-View and added Cards, that show a Walk.
This means, that Mover is now starting to actually get usable. You can figure out how to get from somewhere to somewhere. The biggest Problem right now is that you always have to type in the destination as that is not cached and the selected Route isn’t either…
There was a lot I had to implement for this. After thinking about how you can actually enter the two Stations, I decided to just put a Search-Button on the Departure List and reuse most of the existing UI. It also was not easy to adapt the Data-Models because Transitous also returns Walking-Instructions as Trips.
Let me repeat that: AS TRIPS. In which world should a Walk between two nearby stations be in the same array as the normal Trips?!
Anyways, this is far from completion as you can’t actually see how you are supposed to travel.
I added Pause, Previous and Next Buttons directly in the UI as this was previously only possible using the Media-Keys.
I added the ability to remove Songs and to add Songs to the Queue. I do not really like the design of the “Autocomplete” List but it at least works. However, it is not yet possible to play an entire Album, Artist or Playlist.
I added a Login Window and made the queue more readable. This now also means, that I can open-source this project because the password is no longer hard coded.