This post was deleted
Replying to @SuspiciousCarrot78@aussie.zone
Boom motherfukka! I stayed up all night but POI population is DONE! I now have 1,809, dynamically generated, ZIM Wikipedia-linked POIs for Western Australia running entirely locally on my Raspberry Pi map server.
The POIs themselves come from the WA OSM dataset. This works because a lot of OSM features already carry wikipedia=* and wikidata=* tags…which gives me a link from a mapped place to its corresponding Wikipedia article.
I can then resolve those article titles against my locally hosted Kiwix Wikipedia ZIM and only publish POIs that actually exist in that local copy. I used wikipedia_en_all_mini_2026-06/Wikipedia ZIM (~13GB) as the test.
Meaning, clicking a marker now opens the article lead inside the map, fetched from Kiwix, with a “Read full article” link to the full locally hosted article (see pic)
And just to confirm - this is all local. No calls out to Wikipedia or Wikidata.
Seeing folks want this in their hot little hands, I’ll delay fucking around adding / solving those 4 outstanding ticket items and yeet this onto Github (after I get a few hours of sleep).
Are you planning on sharing the source?
Replying to @eleijeep@piefed.social
I mean…if there’s interest? Just let me figure out those last four nagging pains in the ass and I will put it up. The thing itself is pretty simple lego: frontend, nginx config, SQLite/FTS search service, index-builder scripts, BRouter integration, route-anchor logic.
Right now, I have a few irons in the fire, including a fork called SmartTube Local that is turning into a passion project.
That one is basically: “what if YouTube was local-first, self-hosted and yt-dlp-backed, with the local archive integrated directly into the app and automatically kept up to date…so if the internet died, your kids might not even notice?”
…I just did google maps…why not take on Youtube next, amirite?
EDIT: here you go -
Yeah I mean to you it might be pretty simple lego :) but I’m sure lots of people would benefit from it. Even if not to use the same exact setup then to provide an example or starting point for DIY.
There’s always interest in sources. Otherwise you’d be the only one able to self-host the software. 😉
Replying to @SuspiciousCarrot78@aussie.zone
Have you heard of Tube Archivist?
Edit: ok i see you mentioned it in your Local Smarttube announcement post. Why doesn’t Tube Archivist fit your needs?
Replying to @hirihit640@sh.itjust.works
TubeArchivist is:
- heavy (Redis, Elasticsearch).
- doesn’t have a native TV app.
- will not play nicely with the Raspberry Pi (table stakes are 2 GB RAM, which is more than half my RAM budget).
I like TA a lot, but not for what I have in mind. What I have in mind should use about 100 MB of RAM, run as a systemd service, with videos served directly to the front-end via Samba, in such a manner that they are indistinguishable from the cloud sources when displayed in-app (well, apart from a core badge saying LOCAL).
I’m not coding a simple Jellyfin plug in.
Replying to @SuspiciousCarrot78@aussie.zone
If you release your code, others might be able to help you get those last parts done, perhaps even optimise it.
For me, that’s the hardest part… letting others contribute to my projects 🙂
Replying to @Cyber@feddit.uk
Oh, I will release…but no PRs / maintenance debt is better for me.
Feel free to fork and tinker with it - and I hope you do - but this is a personal project you all convinced me to share :)
Seeing people are keen on this, I will get LLM to write up documentation real quick (GASP!) and then push it to github. Gimme an hour
Replying to @SuspiciousCarrot78@aussie.zone
Put AI in the name and then sell it for like 40 million dollars
Replying to @possiblylinux127@lemmy.zip
Sadly, I am not Peter Steinberge.
Replying to @SuspiciousCarrot78@aussie.zone
This is a great idea.
I’ve been using Comaps on Android, while looking for a desktop alternative to osm.org.
Let us know if you publish this!
Replying to @speculate7383@lemmy.today
Here’s what I’m thinking:
-
Driving-focused routing; easy. BRouter already supports separate car, bicycle and foot routing modes/profiles, and its server accepts a profile= per request. So that one is universal.
-
Live turn-by-turn navigation and rerouting - should be easy. GPS position, route geometry, turn hints, destination coordinates and a local routing API are all sorted. The browser would track position against the active route, advance through manoeuvres as you approach them, detect when you move sufficiently off-route, then call BRouter again from current GPS position to the existing destination.
The main work is a navigation state machine…which…I might need to ask GPT or Claude for help tbh.
- Spoken navigation: probably the easiest next thing. Turn hints are already converted into human-readable text. If a browsers expose SpeechSynthesis (which can speak text through the device’s speech system) then…yeah, done. The navigation state says “150 m from next manoeuvre”, Pi Maps can literally issue speechSynthesis.speak(…).
For guaranteed offline speech you would want an on-device voice installed on the phone, but almost every phone has that (unless you cut TTS out).
- Address coverage - this one is a cheat…because we have Geocoded National Address Files here. G-NAF “…contains the details of every physical address in Australia, with more than 15 million addresses and coordinates, free to the public and updated quarterly”.
I’d be stupid not to use that (though I need to figure out the slice and dice). Obviously, that won’t translate to every place on Earth, but I am coding this for me, so … :)
What I can’t solve is the Traffic. Not really. I mean…sort of. Where I am, Main Roads WA exposes public ArcGIS services with incidents, roadworks, events, road closures, detours and traffic-signal outages, all queryable as JSON, all updated live. In theory, that means a live traffic layer with with road closures, traffic incidents, speed zones etc.
No live traffic congestion / data tho.
Let me sit on it for a bit. I never thought to release this…and these 4 are nagging me…but I really want to move onto the SmartTube project fully. Maybe I’ll just patch the first two or three low hanging fruit. The big issue is field testing it for weeks/months before I can call it properly done.
Honestly, I just wanted my own Google maps. I never thought to apply spit and polish for general release.
If you didn’t know, CoMaps has a desktop Linux and macOS version! I believe GNOME Maps (also on Linux) recently got better offline maps support too
Replying to @scallisto@retrofed.com
Ooh, I didn’t know that. Thanks!
Replying to @SuspiciousCarrot78@aussie.zone
Is it all combined into a nice easy to install docker container?
Replying to @yaroto98@lemmy.world
Yes in spirit, but it is a Docker Compose stack rather than one container. That works better for my set up. IOW nginx/MapLibre/PMTiles, the SQLite search service, and BRouter are separate containers, but they are managed as one project. Like this -
pi-maps → nginx + MapLibre + PMTiles pi-maps-search → Python + SQLite FTS5 pi-maps-brouter → BRouter
Replying to @SuspiciousCarrot78@aussie.zone
I believe you need AI disclosure to post in this sub. Check the sidebar rules.
Replying to @hirihit640@sh.itjust.works
You check them.
AI disclosure is required when posting a promotion. This is neither a promotion, nor AI coded. I am simply sharing something fun I made for myself by myself. If you have an objection to my post, click report and lets have the mods weigh in. In fact, here, let me help you. Tag - @curbstickle@anarchist.nexus
Replying to @SuspiciousCarrot78@aussie.zone
If it’s not made with AI you can use the CBH tag
Replying to @hirihit640@sh.itjust.works
To my reading of the rules, tagging is required when promoting a project. For reference, see -
Specifically
Post Tagging There are three types of tags for project promotional / AI posts. [CBH] - Code By Human - A project promotional post with a project that did not use AI in any capacity. No disclosure necessary. [AIP] - AI Project - A project promotional post with a project that used AI in development in any capacity. Disclosure is required for how it was used. [AIT] - AI Topic - A discussion topic that includes AI. This may be for a discussion on hardware to self-host on, llama.cpp vs ollama, your experience using vulkan, etc.
I am not promoting anything - the code literally does not exist outside of my hard-drive. I am sharing some small measure of success I’ve had in my own work.
If this is objectionable to the PttB, I am happy to remove this post.
Replying to @SuspiciousCarrot78@aussie.zone
Fair enough, I see what you mean now. This is more of a progress report than a project release. Sorry for the misunderstanding. FWIW I think your project is cool regardless of whether you used AI or not, so great work!
P.S. Out of curiosity I did read a bit of your comment history and I do agree with your comments w.r.t privacy and AI disclosure. It is a tricky problem indeed.
Replying to @SuspiciousCarrot78@aussie.zone
Ok, now give me a docker compose stack and I’ll bite 😆
Edit: just saw it on GitHub!!
Replying to @flightyhobler@lemmy.world
Enjoy. You’ll need to tweak it etc but GPT did a pretty good job writing up the documentation.
Replying to @SuspiciousCarrot78@aussie.zone
Your commitment to low memory usage is quite apt in the current memory crisis.
Replying to @ProperlyProperTea@lemmy.ml
That intentional, for exactly the reason you imply: I refuse to pay exorbitant prices for RAM, GPUs, SSD…I will code my way around.
“Force has no place where there is need of skill”
Absolutely amazing!
Replying to @dihutenosa@piefed.social
The power of ASD compelled me.
What’s ASD?
Replying to @SuspiciousCarrot78@aussie.zone
So say us all.
Replying to @lime_red@lemmy.world
Replying to @SuspiciousCarrot78@aussie.zone
Fucking legend
Replying to @SuspiciousCarrot78@aussie.zone
Will it calculate traffic somehow and choose best route?
Replying to @somegeek@programming.dev
No. Reliable, universal and contemporaneous traffic data is generally not open source. You’d need to find a source and populate it yourself (aka the Main Roads department example I gave).
I can’t do that for every place on Earth. I’m not even sure I can do it for myself. It’s genuinely a hard problem and if anyone has a global fix, I’d be curious to see them add it. Not being snide, actually curious.
Best route choices: possibly, but it depends on what you mean. Geometry is pretty easy. Inferring best route based on traffic conditions…see above.
Replying to @SuspiciousCarrot78@aussie.zone
Could it do some dawarich style logging and calculate the time routes take depending on weekday, time, etc?
Replying to @flightyhobler@lemmy.world
DON’T FEED CANDY TO THE ASD KID
(but yes, probably, now that I think about it)
God fucking dammit, now you started me thinking about this. Fuck you very much :)
- “Monday at 8am, this section normally takes 14 minutes.”
- “Sunday afternoon, it normally takes 7.”
Record GPS traces for each road, bucket the results by weekday/time, then feed those historical speeds back into routing. Tada - averaged pseudo traffic flow, barring outliers (like traffic accidents etc). That’s what you’re thinking?
Replying to @SuspiciousCarrot78@aussie.zone
Why not use CoMaps?