[PR #1269] [MERGED] feat: add full-text search module #1664

Closed
opened 2026-02-26 03:31:50 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/koel/koel/pull/1269
Author: @phanan
Created: 12/25/2020
Status: Merged
Merged: 12/25/2020
Merged by: @phanan

Base: masterHead: search


📝 Commits (10+)

  • 84a72d2 feat: add Laravel Scount & TNTSearch
  • 5293bd9 feat: add import:search command
  • ef7d00e feat: guess Model class automagically
  • dbb91d2 chore: rename the search:import command
  • 201da1c feat: add Excerpt search
  • a4ef8b0 chore: remove public/mix-manifest.json from tracking
  • c9fe724 feat: add Song search
  • cacca23 chore: sync with core
  • 588b30d feat: modify the response format for search
  • 8fc7564 chore: sync with core

📊 Changes

30 files changed (+1097 additions, -97 deletions)

View changed files

📝 api-docs/5.0.0/reference/api.v5.yaml (+82 -10)
app/Console/Commands/ImportSearchableEntitiesCommand.php (+33 -0)
app/Http/Controllers/API/Search/ExcerptSearchController.php (+35 -0)
app/Http/Controllers/API/Search/SongSearchController.php (+29 -0)
📝 app/Models/Album.php (+24 -7)
📝 app/Models/Artist.php (+18 -7)
📝 app/Models/Playlist.php (+6 -6)
📝 app/Models/Song.php (+17 -0)
📝 app/Repositories/AbstractRepository.php (+16 -4)
📝 app/Repositories/AlbumRepository.php (+2 -5)
📝 app/Repositories/ArtistRepository.php (+2 -5)
📝 app/Repositories/InteractionRepository.php (+0 -5)
📝 app/Repositories/PlaylistRepository.php (+0 -5)
📝 app/Repositories/RepositoryInterface.php (+0 -2)
📝 app/Repositories/SettingRepository.php (+0 -7)
📝 app/Repositories/SongRepository.php (+3 -5)
app/Repositories/Traits/Searchable.php (+13 -0)
📝 app/Repositories/UserRepository.php (+0 -6)
📝 app/Services/FileSynchronizer.php (+1 -1)
app/Services/SearchService.php (+68 -0)

...and 10 more files

📄 Description

Adding a full-text search module powered by Laravel Scout. By default, the driver is TNTSearch.

To generate the search indices, run php artisan koel:search:import.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/koel/koel/pull/1269 **Author:** [@phanan](https://github.com/phanan) **Created:** 12/25/2020 **Status:** ✅ Merged **Merged:** 12/25/2020 **Merged by:** [@phanan](https://github.com/phanan) **Base:** `master` ← **Head:** `search` --- ### 📝 Commits (10+) - [`84a72d2`](https://github.com/koel/koel/commit/84a72d284c30ccdadfc7fb46a3d52ef02b7ffa82) feat: add Laravel Scount & TNTSearch - [`5293bd9`](https://github.com/koel/koel/commit/5293bd9da03b037b3eeaf6a6b6a416d95a8f1bfc) feat: add import:search command - [`ef7d00e`](https://github.com/koel/koel/commit/ef7d00e16a45d7631c12f4f083bbadc036674c3a) feat: guess Model class automagically - [`dbb91d2`](https://github.com/koel/koel/commit/dbb91d24f99fe30cdc9dec11adb1b14e9aeb67ed) chore: rename the search:import command - [`201da1c`](https://github.com/koel/koel/commit/201da1caa5d9e9f4e3af7be2aa6d2efbbd1d7a1c) feat: add Excerpt search - [`a4ef8b0`](https://github.com/koel/koel/commit/a4ef8b05462dd0226b1bb3c69f108086a1285372) chore: remove public/mix-manifest.json from tracking - [`c9fe724`](https://github.com/koel/koel/commit/c9fe724036bbd3cc5e537fd4945c6220dd0d7016) feat: add Song search - [`cacca23`](https://github.com/koel/koel/commit/cacca23c024b19389d6b5fba02f8d460f306a0b5) chore: sync with core - [`588b30d`](https://github.com/koel/koel/commit/588b30d9bbbd0f8699a4c229452d6d8eea6e7b93) feat: modify the response format for search - [`8fc7564`](https://github.com/koel/koel/commit/8fc7564390c81bed7feff690fc5f6c9877ebb6ba) chore: sync with core ### 📊 Changes **30 files changed** (+1097 additions, -97 deletions) <details> <summary>View changed files</summary> 📝 `api-docs/5.0.0/reference/api.v5.yaml` (+82 -10) ➕ `app/Console/Commands/ImportSearchableEntitiesCommand.php` (+33 -0) ➕ `app/Http/Controllers/API/Search/ExcerptSearchController.php` (+35 -0) ➕ `app/Http/Controllers/API/Search/SongSearchController.php` (+29 -0) 📝 `app/Models/Album.php` (+24 -7) 📝 `app/Models/Artist.php` (+18 -7) 📝 `app/Models/Playlist.php` (+6 -6) 📝 `app/Models/Song.php` (+17 -0) 📝 `app/Repositories/AbstractRepository.php` (+16 -4) 📝 `app/Repositories/AlbumRepository.php` (+2 -5) 📝 `app/Repositories/ArtistRepository.php` (+2 -5) 📝 `app/Repositories/InteractionRepository.php` (+0 -5) 📝 `app/Repositories/PlaylistRepository.php` (+0 -5) 📝 `app/Repositories/RepositoryInterface.php` (+0 -2) 📝 `app/Repositories/SettingRepository.php` (+0 -7) 📝 `app/Repositories/SongRepository.php` (+3 -5) ➕ `app/Repositories/Traits/Searchable.php` (+13 -0) 📝 `app/Repositories/UserRepository.php` (+0 -6) 📝 `app/Services/FileSynchronizer.php` (+1 -1) ➕ `app/Services/SearchService.php` (+68 -0) _...and 10 more files_ </details> ### 📄 Description Adding a full-text search module powered by Laravel Scout. By default, the driver is TNTSearch. To generate the search indices, run `php artisan koel:search:import`. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 03:31:50 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/koel-koel#1664
No description provided.