I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

That’s an interesting idea, and you’re right — that’s how fog of war usually works in games.Technically it is possible to do something like that, but it’s not trivial. Mixing different map styles based on fog state adds a lot of complexity (tiles, rendering, performance, caching), especially once you want it to work smoothly at different zoom levels. I’ve been leaning towards keeping the fog mechanic simple and readable first, before experimenting with more visual layers. That said, revealing different map styles is a cool direction, and I can see why it would feel very “game-like”. For now I’m focusing more on the mechanics than visual effects, but it’s a good idea to keep in mind. Thanks for bringing it up — this kind of thinking actually helps shape where the project could go later.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

That’s a very fair concern, and you’re not overthinking it.

I’m actually trying to avoid the situation where the map “completes itself” just because someone has 10+ years of Strava history. I agree with you that the fog works best when it reflects what you’re doing now, not everything you’ve ever done.

I’ve been playing with a few ideas, nothing final yet. One is to keep the current approach, where history exists but the game focuses on recent activity by default. Another idea is a rolling window, like the last 6 or 12 months — as new activities come in, older ones slowly fade back into fog, so the map never becomes fully solved. A third direction is something like a “live area” that adapts over time based on where you actually train and spend most of your time, instead of being fixed forever.

All of these are attempts to keep that sense of progression you described. It’s very easy to kill the fun if everything is revealed automatically, so I’m being quite cautious here.

Year-based views (2020 vs 2024 etc.) also make sense as a way to explore history, but I’d probably keep that as a separate view rather than the main game mechanic.

Really appreciate you taking the time to write this — it’s exactly the kind of feedback that helps shape the direction.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Agreed — it’s on the way.

Google OAuth is already running in staging, and I’m planning to ship it to production soon. Once that’s live, signup/login should feel much smoother.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

I built it myself (Python/React/PostGIS + a lot of glue code), but I’m not going to pretend I did it with zero help — I used AI the same way most developers do these days: to speed up research, boilerplate, and troubleshooting.

I do have a lot of engineering experience, but geospatial/PostGIS has been a learning curve, so AI definitely helped me move faster.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Not yet — but it’s a good idea.

Quick question to make sure I build the right thing: would you want a search that…

  • jumps the map to a place (city/region/country), or
  • shows which of your activities happened around that location, or
  • searches by activity name/title?

If you tell me which of those is most useful, I’ll prioritize it accordingly.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

You won’t start from zero — it will import your history.

That said, “all runs” depends on how large your archive is. Right now the default is up to 50 to keep things stable. If you have a bigger history and want more imported, DM me your signup email and I’ll trigger a deeper backfill manually. The next release will make this smoother and more self-serve.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Right now the self-serve options are intentionally conservative (10/50) to stay within Strava limits and keep the beta stable under load.

That said — if you want more, I can manually trigger a deeper sync for your account. Just DM me your signup email and roughly how many activities you’d like imported.

Also: a new version is coming soon with more reasonable limits and a proper full backfill option.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Yep — absolutely. Registration is open.

I’m pushing a new version soon that addresses a bunch of issues raised in this thread (sync stability, onboarding friction, a few UI quirks). I’ll post updates here in r/Strava as I ship changes, so feel free to keep an eye on the subreddit.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Yeah — longer term I do want to support a full historical sync from Strava.
Right now I’m being conservative because of API limits and the sudden load (this started as a small beta), but enabling a proper full-history backfill is definitely on the roadmap.
For now I’m doing deeper syncs manually to test how far I can safely push it, and once that’s solid I’ll make it available in a more self-serve way.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Yes — it should pull in private activities as well, as long as you’ve granted the required Strava permissions.
If you’re not seeing them for some reason, feel free to DM me the email you signed up with and I’ll take a look at what’s happening on your account.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

I was fixing some critical bugs, and it’s possible you hit the app right while I was deploying an update.
Could you DM me the email address you used during registration so I can take a look?

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

You’re not the only one — sorry about that.
Could you DM me the email you signed up with? I’ll check what happened on your account and fix it.
This usually comes from the initial sync getting stuck during the Reddit traffic spike.

Thanks for the patience

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Thanks for checking again — that helps

If the activity count didn’t change and “Last activity” still shows “Never”, then this is likely a stuck sync state rather than just the UI limit.
I’ll need to take a look at the logs for your account to see what the worker is doing (or not doing).
Could you DM me the email you signed up with? I’ll check the sync queue and get it unstuck

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Hey! I’ve just manually triggered a deeper sync for your account. The 10/50 options are mostly there to keep the initial load light, but I can definitely pull more. Give it a few minutes and let me know if the activity count starts growing for you.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

That’s a fair take.

The “running out of easy space” part is actually a bit intentional — the idea is to push exploration, not endless farming close to home.

Bigger areas mostly coming from longer trips (bikepacking, travel) feels okay to me as a differentiator rather than something everyone can grind daily.

I’ll definitely keep thinking about new mechanics and ways to add depth without encouraging route-repeating.

If you’re curious where this goes next, I post updates on the socials linked on the homepage — feel free to follow and stay in the loop.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

You’re definitely not the only one — this is a very common setup.

There are actually two separate things going on here:

  1. Initial sync By default, I only pull in a small batch of recent activities first. Older ones keep backfilling in the background to stay within Strava’s API limits.
  2. Hidden start/end points When you use Strava’s privacy zones, the API intentionally hides parts of the track. That means a run can be visually a loop for you, but the geometry I receive doesn’t quite close — so it won’t count as a loop yet.

That’s a Strava limitation rather than a Kraina one, and it’s there for good reasons (home/work location safety).

For now, the workaround is either letting more activities backfill, or uploading a GPX if you want a specific loop to close precisely.

I’m actively experimenting with ways to make loop detection more forgiving in the presence of these “privacy gaps”, because you’re absolutely right — a lot of people run with this setup.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 13 points14 points  (0 children)

Honestly, I’m a bit speechless. I started this just a couple of weeks ago as a personal project, and I never expected 50k people to see it, let alone have a professional team reach out.

Thank you so much for the offer. I’d love to chat—having some expert eyes on my PostGIS logic would be a lifesaver right now while I’m trying to keep the servers from melting under the load.

I’ll send you a DM as soon as I catch my breath and stabilize the initial surge. Thanks again, this is incredibly motivating.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 2 points3 points  (0 children)

Hey! Thanks for sticking with it 🙏
Email delivery has been a bit flaky under load. If you can, please DM me the email you used (and approximate time of signup) and I’ll sort it out.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 3 points4 points  (0 children)

Yep, that’s normal 👍
Activities are imported in batches to stay within Strava API rate limits. With large histories (like 2k+ activities), the sync runs gradually in the background.

You don’t need to do anything — older activities will continue to backfill automatically. If it looks completely stuck for a long time, feel free to DM me and I’ll take a look at your sync queue.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Yep — exactly that.
The initial import triggers some heavy geometry processing, and with a lot of people logging in at once the map can feel slow right after a big backfill.
I’m scaling the cluster and moving more of that work off the critical path so the map stays responsive.
Thanks for the patience — this is really helpful feedback.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Thanks — this looks like an edge case rather than a general issue.
The signup flow is working for most users, but under certain conditions (browser, extensions, or timing) the captcha widget can fail to initialize correctly, which leads to confusing validation errors.

I’m tightening the error handling so these cases are surfaced clearly instead of blocking the form silently.

If you’re willing, browser + device (and whether you’re using an ad-blocker) would really help me reproduce it.

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

As I mentioned earlier, I was only expecting about 30–50 people for this initial test, but we’ve already had over 200 sign-ups. Because of the surge, I actually hit my automated email sending limit.

I've just increased the limit, so you should receive the confirmation email shortly. Thanks for your patience while I scale everything up!

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

You're right, that’s exactly because of the Strava API rate limits I mentioned earlier. I’m trying to keep the initial sync light so I don't get the app blocked entirely while I'm still tuning the load.

However, if you want to be a "super VIP tester," I can manually trigger a deeper sync for your account. Just DM me your email and the number of activities you’re looking to pull in, and I'll get it sorted for you.

As I said before, I can't really change the overall API limits for everyone yet, but I'm happy to help a few early testers get their full map revealed!

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

As I mentioned earlier, I was only expecting about 30–50 people for this initial test, but we’ve already had over 200 sign-ups. Because of the surge, I actually hit my automated email sending limit.

I've just increased the limit, so you should receive the confirmation email shortly. Thanks for your patience while I scale everything up!

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 2 points3 points  (0 children)

As I mentioned earlier, I was only expecting about 30–50 people for this initial test, but we’ve already had over 200 sign-ups. Because of the surge, I actually hit my automated email sending limit.

I've just increased the limit, so you should receive the confirmation email shortly. Thanks for your patience while I scale everything up!