Add worldwide genre style selector

This commit is contained in:
diyaa
2026-09-15 18:49:34 +02:00
parent 03bfd3ef75
commit 297b791a3e
10 changed files with 607 additions and 15 deletions
+9
View File
@@ -24,6 +24,7 @@ macOS App
├── Application Services
│ ├── AI Director
│ ├── Prompt Compiler
│ ├── Genre & Style Catalog
│ ├── Instrument Catalog
│ ├── Arabic Pronunciation Processor
│ ├── Project Versioning
@@ -109,3 +110,11 @@ the Suno Style Prompt.
The current architecture does not include instrument images, audio
previews, sound samples, playback, Freesound, an Instrument API or
external API calls for instrument data.
## Genre & Style Selector Boundary
Genre and style catalog data is structured local data, separate from
SwiftUI views. The Presentation layer may search, filter and toggle
selections, while the catalog service owns stable ids, categories,
optional regional metadata and search aliases. Selections are stored as
existing `GenreStyle` values on the SongProject.
+8
View File
@@ -41,6 +41,14 @@ InstrumentCatalogItem
- aliases[]
- searchTerms[]
GenreStyleCatalogItem
- id
- name
- familyCategory
- regionOrigin (optional)
- aliases[]
- searchTerms[]
SongSection
- id
- type (intro, verse, preChorus, chorus, bridge, outro, custom)
+2 -2
View File
@@ -7,8 +7,8 @@ finalized.
- Exact Swift/SwiftUI architecture conventions for the repository.
- OpenAI model(s) and API endpoint strategy.
- Exact private AI rules/system prompt.
- Complete genre/style taxonomy and whether it is curated locally or
AI-assisted.
- Resolved: genres/styles use a large curated local catalog with
category/region browsing, search aliases and checkbox multi-select.
- Complete worldwide instrument catalog taxonomy, family/category
groups, region/origin coverage, aliases/search terms and maintenance
strategy.
+10
View File
@@ -21,6 +21,8 @@ and writing engine, then prepares final lyrics and style instructions.
## Song Controls
- Multiple genres/styles can be blended.
- Genres and styles can be selected from a large worldwide catalog with
search, category/region browsing and checkbox-based multi-select.
- Instruments can be selected from a large worldwide instrument
catalog.
- Instruments can be searched by name, browsed by family/category and
@@ -75,6 +77,14 @@ Instrument images, audio previews, sound samples, audio playback,
Freesound, an Instrument API and external API calls for instrument data
are not part of the current product requirement.
## Genre & Style Selector
The application provides a large, curated local catalog of worldwide
music genres and styles. Users can search it, browse by category and
region/origin where useful, and select or deselect multiple entries with
checkboxes. Catalog data is structured and separate from SwiftUI views;
it does not require an external API.
## Project Management
Every song is stored as a project. Important changes can create versions
+1
View File
@@ -131,3 +131,4 @@ lyrics and style prompt in the project.
## Current Improvements
- [x] Add confirmed project deletion from the project browser.
- [x] Add a worldwide genre and style selector with checkbox multi-select.