1
0
Fork 0
Commit graph

14 commits

Author SHA1 Message Date
Matthew Holt
e44daa85df
Refactor location processing options
Add clustering strength parameter
2025-09-20 22:18:40 -06:00
Matthew Holt
f0697d2d6b
Refactor embedding jobs; enhance tooltips; upgrade gofakeit to v7
The gofakeit upgrade uses the new math/rand/v2 package, which uses uint64 more than int64, so we had to change a bunch of row IDs from int64 to uint64.
2025-04-24 16:33:41 -06:00
Matthew Holt
5844c5755b
Fix most (all?) lint warnings 2024-12-11 18:59:24 -07:00
Matthew Holt
37461545be
Fix fs.SkipDir usage; and minor bug in NMEA
fs.SkipDir documentation is a bit unclear: does it skip the remainder of files in the directory when returned from walking a file, or does it no-op on files and only skip going INTO dirs when on a dir?

I thought it was the latter, and thus, we didn't need to check whether the current DirEntry was a directory before returning (most commonly, when we are trying to skip hidden files/folders). But nope, it's the former -- SkipDir will skip the rest of the entries in the directory, which is NOT what we want. We just want to avoid going INTO a hidden directory in our case.

So unfortunately we now have to check IsDir() before returning.

Also fixed a slight bug with NMEA processing.
2024-12-07 21:16:36 -07:00
Matt Holt
746e5d6b5c
Refactored import flow, new import UI, thumbnails stored in timeline, etc. (close #3) (#43)
* Schema revisions for new import flow and thumbnails

* WIP settings

* WIP quick schema fix

* gallery: Image search using ML embeddings

Still very rough around the edges, but basically works.

'uv' gets auto-installed, but currently requires restarting Timelinize before it can be used.

Lots of tunings and optimizations are needed. There is much room for improvement.

Still migrating from imports -> jobs, so that part of the code and schema is still a mess.

* Implement search for similar items

* Finish import/planning rewrite; it compiles and tests pass

* Fix some bugs, probably introduce other bugs

* WIP new import planning page

* Fix Google Photos and Twitter recognition

* Finish most of import page UI; start button still WIP

* WIP: Start Import button

* Fixes to jobs, thumbnail job, import job, etc.

* Implement proper checkpointing support; jobs fixes
2024-12-06 11:03:29 -07:00
Matthew Holt
3066ddbeb9
Major linting overhaul
I've addressed most of the "fast" linters errors locally in my editor.

Some linters are broken or buggy.
2024-08-29 16:43:52 -06:00
Matthew Holt
21d5a2ed8e
chore: Fix some lint errors (add package comments) 2024-08-28 16:05:43 -06:00
Sergio Rubio
12300753a9
geojson: property parsing fixes (#35)
* Accept geojson files without a time property: do not return an error
  if well-know time properties aren't found, which prevents the entire
  feature from being ingested.
* Random properties aren't stored sometimes: do not modify the map while
  iterating it, as that can have unpredictable effects according to the spec
  (https://go.dev/ref/spec#For_range).
2024-08-23 07:53:20 -06:00
Matthew Holt
bc5c07d706
geojson: Accept freeform feature properties as metadata
Certain property names related to time, altitude, heading, etc., are extracted to the best of our ability.

Updates #33

Also a minor fix for a bug in spa.js when creating a new timeline with no owner info (other than name).
2024-08-22 16:55:53 -06:00
Sergio Rubio
a24d575883
GeoJSON: save and display additional metadata (#33)
Stores additiona feature properties as metadata, which makes for a nicer
rendered object:

- Name: name given to the feature
- Country: readable country name
- ISO country code
- Notes: arbitrary text notes

The spec[^1] doesn't seem to define the properties allowed here, it can
be an arbitrary JSON object, so maybe a better option in the future
would be to read and save all the properties available.

[^1]: https://datatracker.ietf.org/doc/html/rfc7946#section-3.2
2024-08-22 14:06:25 -06:00
Michael Bolli
48b1dd3e55
geojson: location(): enhance timestamp detection if array has more than 4 members (#29) 2024-08-20 10:27:03 -06:00
Michael Bolli
2abf8443c8
geojson: Add UI for data source options (#27)
* add geojson import options ui

* geojson: `location()`: fix positions with more than two values were not processed
2024-08-19 11:46:51 -06:00
Matthew Holt
a581abf765
geojson: Accept noncompliant positions; refactor & fix bug (fix #23) 2024-08-16 15:05:25 -06:00
Matthew Holt
1daf6f4157
Initial open source commit 2024-08-11 08:02:27 -06:00