Skip to content

Comments

OLM v5: Tagging v2, Achievements, Vue3, Tailwind & more#668

Draft
xlcrr wants to merge 292 commits intomasterfrom
upgrade/tagging-2025
Draft

OLM v5: Tagging v2, Achievements, Vue3, Tailwind & more#668
xlcrr wants to merge 292 commits intomasterfrom
upgrade/tagging-2025

Conversation

@xlcrr
Copy link
Member

@xlcrr xlcrr commented Dec 11, 2024

This is our biggest upgrade ever. OpenLitterMap is being entirely rebuilt from scratch (again) but this time its supercharged by AI.

  • New tagging system. All tags are being migrated to the new format. See MigrationScript.php which updates all tags, generates new redis accumulations, creates a new time-series database implementation, and introduces a new achievements feature (currently debugging it).
  • New Tags: Previously there was no relationship between tags. We are introducing new classes to create and maintain relationships between Categories, Objects, Materials, Brands, & CustomTags.
  • New Achievements feature.
  • Migrating from Vue2 to Vue3. Includes migration from vuex to pinia.
  • Modernising css with a move from bulma to tailwind.
  • Latest possible laravel, node, npm & package versions should close a lot of dependabot issues.
  • Improved seed database for starting from scratch.
  • New gamification elements, custom image ChatGPT integration.
  • Lots more on the way!

@xlcrr xlcrr changed the title Upgrade Tagging v2 Category, Object, TagTypes, Materials, Brand & Quantity OLM v5: Upgrade Tagging v2, Vue2 -> Vue3, CSS -> Tailwind & more Dec 25, 2024
@xlcrr xlcrr changed the title OLM v5: Upgrade Tagging v2, Vue2 -> Vue3, CSS -> Tailwind & more OLM v5: Tagging v2, Vue3, Tailwind & more Jan 7, 2025
xlcrr and others added 30 commits October 12, 2025 20:11
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
PhotoObserver hard-deleted rows before MetricsService could reverse
metrics, and the DeletePhotoMetrics listener was broken (ImageDeleted
event has no photo_id property). This adds SoftDeletes to Photo,
calls MetricsService::deletePhoto() synchronously in controllers
before soft-deleting, and removes the broken listener.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Skills loaded on-demand by Boost when working in each domain:
metrics-pipeline, photo-pipeline, teams-safeguarding, tagging-system,
location-system, v5-migration, mobile-shim, testing-patterns.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Backend (AddTagsToPhotoAction): auto-resolve category from object,
fix custom tag key reading $tag['key'] not $tag['custom'], add
brand-only and material-only tag handlers. Frontend (AddTags.vue):
fix photo skip after submit, use fetchUntaggedData for correct filter.
LocationController: remove deprecated manual_verify filter, rename
response keys children→locations/location_type. 4 new tests (516 total).
Updated all skill files and readme docs to reflect current state.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant