Giter Club home page Giter Club logo

wanderer's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

wanderer's Issues

Wrong executable format on flomp/wanderer-db image

Just a small issue with your docker image for the database. Currently the executable is built for arm64:

pocketbase: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, Go BuildID=Ypg7785avPSIhmw-I2_z/cEYv5F-E4-7xfmVePnOh/sPjUGfxd6wd_odGwtFZ-/ir6okl09Mx4CbzeSaRP0, with debug_info, not stripped

so produces the following output when ran:

wanderer-db  | exec /pocketbase: exec format error

I am currently deploying on an amd64 machine.

Excited to check this out when the image is fixed. Thanks

[Feature] As a cyclist I want to filter on distances >20km as all my tracks are >20km

Hi,
as almost all my tracks/trails are longer than 20km, the current distance filter is almost useless and I would like to have the max filter value as at least one of the following:

  • static value at 200km
  • as a setting in docker-compose
  • as a setting in the app
  • dynamically by the longest track out of all my tracks

I found this code but have no idea if its really just as simple as to change those values (sry, not a js guy)?

Only max 5 tracks are ever shown

First of, loving this project, I've been looking for something like this for a while!

I noticed when I uploaded a bunch of gpx files to test things out, the trails tab of wanderer only ever shows the first 5 tracks matching filter criteria. So if there are more than 5 tracks, they are simply not shown.

If you change the ordering (to e.g. alphabetical), 5 different tracks will be shown, so it is not an error in uploading, etc.

The same happens in the Map tab. Interestingly, it does not seem to be a problem in the Lists tab.

I am just using the default docker-compose. No changes.

Feature Request: Import trails from external providers

First of all, thanks for creating this project, I've been searching for something like this for a long time.

I record all my tours via Komoot and would love to be able to directly import them from there as it would take me a lot of time to manually download and import hundreds of GPX files. Support for other providers like Strava would also probably be pretty useful to people using them.

Feature request: Show lists as map

Currently its possible to show lists as card or list. I would be nice to show them as map.

So it's like using the map module with a preselected list as filter.

[improvement] City search results in the U.S. should include State

So, as I live in NYC, I have input several trails walked in Brooklyn.

  1. I input brooklyn in the search field
  2. I get a list of my trails, fine
  3. but I also get two Brooklyn in the U.S. without any means to know where they are as the State is not included > please include State.

[Doc] Incorrect Meili Master Key Documentation

Hi,

The documentation of the meili master key for the docker-compose setup is incorrect.
The key has to be changed to a secure key (I don't know what the security parameters are for meili)

When setting an insecure key, the wanderer-search container log contained the following:

A master key has been set. Requests to Meilisearch won't be authorized unless you provide an authentication key.


 Meilisearch started with a master key considered unsafe for use in a production environment.

 A master key of at least 16 bytes will be required when switching to a production environment.


We generated a new secure master key for you (you can safely use this token):

>> --master-key ALongKey <<

The new master key was a 42 character string.

The issue here is, with my insecure key I was not able to use meili search. After uploading some GPX tracks, the Trails and Map view did not contain any tracks. They were only shown on the Home screen.

I had to delete the data folder, and set a secure key for meili to be able to see the gpx tracks in the Trails and Map view.

A secure key can for example be generated via:
openssl rand -hex 22

[HOW TO] Setup wanderer after NPM/Proxy

Hi developers,

Can you please write instruction, guide how to setup wanderer after nginx proxy manager(npm)?
Localy its running pretty cool, but im facing issues when i want to share it my friends/WWW.

Internal server error 500 when accessing trials or map without signing in.

First off all, thank you very much for creating and sharing this awesome project!

I do seem to have an issue where the trials and map sections throw an 500 internal error whenever I am not signed in. I do have some trials that should be publicly available. Everything works however when signed into an account.

From the Home page I am able to access the public trails, so they are definitely available.

Screenshot from 2024-04-05 15-30-08
Screenshot from 2024-04-05 15-29-36

Validation errors are swallowed by "Error creating user"

Tried creating a user on my phone and kept getting "issue creating user". Hopped on my desktop and had to dig into the response to see the issue was that my username was too short.

Should have those validation errors propogate up. I can give it a go later if I have a chance to dig into the code.

[Translation] More strings to translate

Documentation should be split into API Documentation and Documentation as they are not the same

Completed should be split into Completion status and Completed

Types of transportation: Hiking, Walking, Climbing, Skiing, Canoeing, Biking

Cards at the top of the page: Home, Trails, Map (Some bugged resources?)

Zrzut ekranu z 2024-03-27 21-57-14

This whole box

Invalid Date in summit book

Side note: Very cool that apng files work and gifs don't

unable to create first account

I am unable to create an account after the first install. The only message is "error creating user".
I've tried looking at the logs but nothing shows.

500 Internal Error

Description

I tried to run the container but http://ip:3000 returns 500 Internal Error.

Following is the output in terminal

podman start -a wanderer-search
ls: /meili_data/data.ms/indexes: No such file or directory
error: invalid value 'True' for '--no-analytics'
  [possible values: true, false]

  tip: a similar value exists: 'true'

For more information, try '--help'.
podman start -a wanderer-db
ERRO[0000] Failed to start transient timer unit: Unit 0508fd13820c91db6349a87c0b986f9b81a74b4a940d1cdb77af92e511b5b8ed.timer was already loaded or has a fragment file. 
[db]     | 2024/04/09 05:43:01 Server started at http://0.0.0.0:8090
[db]     | ├─ REST API: http://0.0.0.0:8090/api/
[db]     | └─ Admin UI: http://0.0.0.0:8090/_/
podman start -a wanderer-web
ERRO[0000] Failed to start transient timer unit: Unit 0508fd13820c91db6349a87c0b986f9b81a74b4a940d1cdb77af92e511b5b8ed.timer was already loaded or has a fragment file. 
[web]    | Listening on 0.0.0.0:3000

I created the missing file /meili_data/data.ms/indexes manually and started the container again.

podman start -a wanderer-search
ERRO[0000] Failed to start transient timer unit: Unit 2fb5f2edeab02bafcfec7f2e86420887286d552f482fe6b6876dae69c9a30bfc.timer was already loaded or has a fragment file. 
error: invalid value 'True' for '--no-analytics'
  [possible values: true, false]

  tip: a similar value exists: 'true'

For more information, try '--help'.
podman start -a wanderer-db
ERRO[0000] Failed to start transient timer unit: Unit 2fb5f2edeab02bafcfec7f2e86420887286d552f482fe6b6876dae69c9a30bfc.timer was already loaded or has a fragment file. 
[db]     | 2024/04/09 05:56:20 Server started at http://0.0.0.0:8090
[db]     | ├─ REST API: http://0.0.0.0:8090/api/
[db]     | └─ Admin UI: http://0.0.0.0:8090/_/
podman start -a wanderer-web

Device specific Info

  • Remote server. (not localhost)
  • Operating system: fedora atomic
  • podman
  • selinux

Reproduction steps

  1. ssh user:host
  2. wget https://raw.githubusercontent.com/Flomp/wanderer/main/docker-compose.yml
  3. modify docker-compose.yml
    2.1. add :Z to all paths to account for selinux.
    2.2. change localhost to ip addr of server
  4. podman compose up

Auto importet maps via upload folder not visible in map view

Hi,
i tryed your auto import.

  • auto importet gpx files are visible in list view (time attribute from gpx file is ignored - want to import 1400 gpx files from last 10 yrs)
  • gpx files are not visible in map view
    those gpx files are from garmin connect - export all via https://github.com/pe-st/garmin-connect-export
    If i delete auto uploadet track and upload it via webui, its visible in map view (doesn't enable "public visible",.. only default)
    Issue is - auto imported gpx files need a category to display in map view
    An fast option for "search after hike - select all hikes and change category to hike" would be nice!
    br

[improvement] Possible to upload several GPX files at once?

Hi,
Thank you for the very promising tool -- just what I was looking for!
I have hundreds of gpx files and was wondering if it would be possible to upload them all at once, then refine the records for each.
Doing it programmatically through the API would be fine with me.

Thx,
S.

Suggestions for adding healthchecks to wanderer and pocketbase containers?

I assume something simple like this could work or are there better endpoints / APIs to check?

Use this with port 3000 and another one for port 8090?

    healthcheck:
      test: curl -ILfSs http://localhost:3000 > /dev/null || exit 1
      interval: 30s
      timeout: 15s
      retries: 3
      start_period: 30s

And looking at the sample healthcheck for meilisearch:

    healthcheck:
      test: curl --fail http://localhost:7700/health || exit 1
      interval: 30s
      retries: 10
      start_period: 30s
      timeout: 10s

Unable to register new user

I just deployed the stack via the provided docker-compose.yml on my Synology, adjusting the 'volumes' settings were the only changes I made. The deployment went fine, the frontpage is showing up.

Unfortunately it is not possible to register a user. Error message "Fehler beim Erstellen des Nutzers"

Export All Trails

Hi,

it would be nice to have the ability to export all trails at once.
This could be enhanced by various option:

  • In Profile: Export All
  • Trails/Map View: Export current visible

The export feature could be customizable to export the selected/all of existing data:

  • GPX
  • Photos
  • Summit Book

Uploaded tracks not showing up anywhere

Hi, just found this very nice app via reddit and had to try it out.
Installed it via the provided docker-compose and averything seems to run fine after registering a new user ... but:

After saving a new trail (which I get a success message for) its not showig up anywhere. Not in any search and not on the map sor anywhere else .... but

If I use Firefox and navigate from the Trails page to the Home page all my tracks show up for a fraction of a second before the new page is being shown.
Edge not showing anything at all (even when switching pages).

I am not using a reverse proxy yet and not getting any error messages in the logs (at least the ones I can see via portainer).

Another question: Where are my uploaded gpx files saved? I was under the impression that they are saved as plain files but can not find them. Would like to have the uploaded files as plain files somewhere for easier backup.

Clean install results in error 500

I took the docker-compose.yml and docker compose up without any change. The result in the browser for http://localhost:3000/ is an error 500

In the shell i get a lot of errors by the db:

wanderer-db      | exec /pocketbase: exec format error

And while the request was loading the this error:

wanderer-web     | TypeError: fetch failed
wanderer-web     |     at Object.fetch (node:internal/deps/undici/undici:11731:11)
wanderer-web     |     at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
wanderer-web     |   cause: Error: getaddrinfo EAI_AGAIN db
wanderer-web     |       at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
wanderer-web     |     errno: -3001,
wanderer-web     |     code: 'EAI_AGAIN',
wanderer-web     |     syscall: 'getaddrinfo',
wanderer-web     |     hostname: 'db'
wanderer-web     |   }
wanderer-web     | }
wanderer-web     | TypeError: fetch failed
wanderer-web     |     at Object.fetch (node:internal/deps/undici/undici:11731:11)
wanderer-web     |     at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
wanderer-web     |   cause: Error: getaddrinfo EAI_AGAIN db
wanderer-web     |       at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26) {
wanderer-web     |     errno: -3001,
wanderer-web     |     code: 'EAI_AGAIN',
wanderer-web     |     syscall: 'getaddrinfo',
wanderer-web     |     hostname: 'db'
wanderer-web     |   }
wanderer-web     | }

Dates for Summit Book entries are recorded incorrectly

It appears that something is shifting the date entered in "Summit Book" entries:

What's entered in the dialog:
image

What's saved:
image

Attempting to edit the date afterwards does not fix the entry.

Browser: Firefox 123.0.1 on Arch
Locale: en_US

[Feature] Map View Adjusted to Tracks

Hi,

it would be nice if the there is an option for the Map view so that the map is automatically adjusted based on the location of all tracks.

E.g. independent from the default location, the map is zoomed and adjusted so that all tracks of the user is visible in the map.

This would allow the user to automatically see all of their tracks at once on the map without having to zoom out/in / pan around.

Possible to run behind reverse proxy under subpath?

Hi,

Thanks for making wanderer!

I'm running wanderer on a k8s cluster behind a reverse proxy (Ingress NGINX Controller). I'd like to host wanderer at <my-hostname>/wanderer. I tried setting the ORIGIN envvar to include the /wanderer subpath, but it seems the app always wants to fetch assets from /_app, which causes things to break. Is there a way to make this work?

Thank you!

[Feature] Share trails between users

Hi,
Maybe this is not feature, but I can't see option how to share track to other users.
I can see only my uploaded tracks and can't find button/way how to share to other users.

Sincerely,
Berils.

Uploading larger images lead to error

When i want to upload a larger image with 7.1 MB i get an error:

web-1     | SvelteKitError: Content-length of 7088136 exceeds limit of 524288 bytes.
web-1     |     at Object.start (file:///app/build/handler.js:984:19)
web-1     |     at setupReadableStreamDefaultController (node:internal/webstreams/readablestream:2333:23)
web-1     |     at setupReadableStreamDefaultControllerFromSource (node:internal/webstreams/readablestream:2366:3)
web-1     |     at new ReadableStream (node:internal/webstreams/readablestream:289:7)
web-1     |     at get_raw_body (file:///app/build/handler.js:973:9)
web-1     |     at getRequest (file:///app/build/handler.js:1052:7)
web-1     |     at Array.ssr (file:///app/build/handler.js:1230:19)
web-1     |     at handle (file:///app/build/handler.js:1300:23)
web-1     |     at file:///app/build/handler.js:1300:40
web-1     |     at Array.<anonymous> (file:///app/build/handler.js:1219:4) {
web-1     |   status: 413,
web-1     |   text: 'Payload Too Large'
web-1     | }

[Documentation] How do I update the app?

I want to QA my translation but when I try to run the app in docker it has older version that I installed yesterday.

sudo docker rm wanderer-search wanderer-db wanderer-web
sudo docker compose up -d

iOS Upload gpx via files is not possible

Hi,

thanks for recent 0.40 update with dates! ❤️

I‘ve noticed in v0.2 I could upload in wanderer downloaded gpx files from iOS 17.4.1
(Komoot gpx download)

now gpx files are greyed out during file upload selection in files in 0.3 and 0.4.

would be fine, if it will be possible to upload from mobile.

second request, please allow in routes view / map view a date range selection (for example view routes from last month, or from 1.1.-1.6.2023,..

IMG_3141

3rd:
Sorting via date (descending) and creation date doesn’t work. It doesn’t refresh or sort it right (iOS and brave / windows)

4th:
Please show date also in list view and detail view

IMG_3278
IMG_3279

Search container is not coming up

With version 0.2.0. when starting up fresh with docker compose up results in an

dependency failed to start: container wanderer-search-1 is unhealthy

and an empty search folder. No other error is shown in the console even though i added MEILI_LOG_LEVEL: WARN

Track not show in map view, NaNs in some fields

Some of my GPX files are not showing up in the map view. They do appear in the list on the left. For instance:

image

"Haute Route 4..." is not visible. Clicking on it will open the specific track, and is drawn on the map:

Screenshot from 2024-05-03 10-40-56

y and m are show as NaN.

This happens with some GPX files I downloaded, this is an example just for reference. The raw GPX file does not look like it has broken syntax.

[Feature suggestion] Auto-upload folder for gpx files

Good morning,

Im sorry if these feature requests are too much, but....
It would be cool feature if there we're option to upload files automatically using syncthing,nextcloud sync, rsync, or any other sync software.

Scenario: Im getting on my bike, with open osmand, which automatically start to record trail. After I finish my ride, I press save button and add comments. This file is being saved in folder TRACKS, and this folder is synced to wanderer folder TRACKS.

Now only option is to manually upload gpx files, but it would be awesome if this gpx file repository would be up-to-date all the time with tracking device. Not necessary both ways, but it would be cool if they were imported automatically.

Now storage tree looks like this:
image

BR,
Berils

error "Payload Too Large"

Thank you very much for this great app!

I can upload small gpx files but most of my files are some MB big and with these I get an error:

SvelteKitError: Content-length of 965006 exceeds limit of 524288 bytes.
    at Object.start (file:///app/build/handler.js:984:19)
    at setupReadableStreamDefaultController (node:internal/webstreams/readablestream:2333:23)
    at setupReadableStreamDefaultControllerFromSource (node:internal/webstreams/readablestream:2366:3)
    at new ReadableStream (node:internal/webstreams/readablestream:289:7)
    at get_raw_body (file:///app/build/handler.js:973:9)
    at getRequest (file:///app/build/handler.js:1052:7)
    at Array.ssr (file:///app/build/handler.js:1230:19)
    at handle (file:///app/build/handler.js:1300:23)
    at file:///app/build/handler.js:1300:40
    at Array.<anonymous> (file:///app/build/handler.js:1219:4) {
  status: 413,
  text: 'Payload Too Large'
}

On upload the map shows the correct route. "Route speichern" then gives "Error saving trail.". The new entry is listed under tracks but the map is without a route.

A similar problem occurs when uploading photos that are bigger then ~800x600px.

Andreas

(linux docker 26.0.0, wanderer v0.3.2)

[improvement] units (mi/ft) should be a user setting and same over all pages

As a user with a german Browser and an english server I am getting mixed distance/elevation units in the ui.

  • mi/ft on the front page (in the tiles)
  • km/m on the map

Improvement:

  • Would be nice if the same units could be used on all pages.
  • Would be nice if the user could select between imperial and metric units.

Meilisearch rejects gpx file due to size

I have a gpx file that is 528,6 kB large. When i try to upload it, i get the following error. In the browser i only get an "Internal Error"

web-1     | SvelteKitError: Content-length of 528846 exceeds limit of 524288 bytes.
web-1     |     at Object.start (file:///app/build/handler.js:984:19)
web-1     |     at setupReadableStreamDefaultController (node:internal/webstreams/readablestream:2333:23)
web-1     |     at setupReadableStreamDefaultControllerFromSource (node:internal/webstreams/readablestream:2366:3)
web-1     |     at new ReadableStream (node:internal/webstreams/readablestream:289:7)
web-1     |     at get_raw_body (file:///app/build/handler.js:973:9)
web-1     |     at getRequest (file:///app/build/handler.js:1052:7)
web-1     |     at Array.ssr (file:///app/build/handler.js:1230:19)
web-1     |     at handle (file:///app/build/handler.js:1300:23)
web-1     |     at file:///app/build/handler.js:1300:40
web-1     |     at Array.<anonymous> (file:///app/build/handler.js:1219:4) {
web-1     |   status: 413,
web-1     |   text: 'Payload Too Large'
web-1     | }

Rename to .gpx without .txt to test with.
2021-10-24_536064034_Essen-Mitte nach Bochum-Hauptbahnhof.gpx.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.