Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop Tag Plugin System: Enhance Subjects page by Integrating Tags #8279

Open
3 tasks
Tracked by #7904
mekarpeles opened this issue Sep 9, 2023 · 2 comments
Open
3 tasks
Tracked by #7904
Assignees
Labels
Lead: @mekarpeles Issues overseen by Mek (Staff: Program Lead) [managed] Needs: Breakdown This big issue needs a checklist or subissues to describe a breakdown of work. [managed] Needs: Detail Submitter needs to provide more detail for this issue to be assessed (see comments). [managed] Priority: 2 Important, as time permits. [managed] Theme: Book Tags Issues related to community book tags Theme: Subjects Type: Epic A feature or refactor that is big enough to require subissues. [managed]

Comments

@mekarpeles
Copy link
Member

mekarpeles commented Sep 9, 2023

Once the basic ability to CRUD (create, read, update, delete) Tags has been achieved in #7766 and basic infrastructure is in place to connect/associate subject strings and Tags, the next step is to create a generic schema / DSL (domain specific language) for Tags that lets librarians define metadata to enhance how the subject page renders.

@JaydenTeoh has drafted/prototyped a plugins idea in #7928 that lets librarians associate Tags with any number of plugins (which are ostensibly macros or templates). #7928 is an amazing proof of concept, which achieves the goal of extending the capabilities of subject pages by defining a list of plugins which the subject page integrates. The concept is close but I think we may want to abstract as much of the implementation/code logic out of the Tag document and into the subject page (as a means of defining an implementation of the relationships specified within the Tag).

At minimum, we want to be able to (a) add more named carousels to Subject pages and (b) present patrons with a few librarian-chosen facets (related_tags or related_subjects) -- similar to the search page -- that the patron can click on to narrow their search.

This issue has 3 parts, all of which are prototyped by #7928:

  • Prototype Tag Schema MVP -- schema/DSL that allows librarians to add queries and relationships to a Tag. Each Tag might have...
    • A primary_query for the Tag/subject (by default / if not specified is just subject:whatever-the-subject-is)
    • interesting related_tags a patron might click to drill down and further narrow what is shown by the primary_query
  • Update the create/edit Tag UI that enables librarians to specify Tag plugins to customize a subject page'
  • Integrate the subject page to implement each Tag plugin

image

image

Notes

Screenshot 2023-09-18 at 3 28 45 PM
@mekarpeles mekarpeles added Priority: 1 Do this week, receiving emails, time sensitive, . [managed] Needs: Detail Submitter needs to provide more detail for this issue to be assessed (see comments). [managed] Needs: Breakdown This big issue needs a checklist or subissues to describe a breakdown of work. [managed] Lead: @mekarpeles Issues overseen by Mek (Staff: Program Lead) [managed] Theme: Subjects Theme: Book Tags Issues related to community book tags labels Sep 9, 2023
@mekarpeles mekarpeles added this to the Sprint 2023-09 milestone Sep 9, 2023
@mekarpeles
Copy link
Member Author

#8466

@mekarpeles
Copy link
Member Author

I think once we land #8466 we'll be in great shape to discuss next steps.

@mekarpeles mekarpeles added Type: Epic A feature or refactor that is big enough to require subissues. [managed] Priority: 2 Important, as time permits. [managed] and removed Priority: 1 Do this week, receiving emails, time sensitive, . [managed] labels Nov 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Lead: @mekarpeles Issues overseen by Mek (Staff: Program Lead) [managed] Needs: Breakdown This big issue needs a checklist or subissues to describe a breakdown of work. [managed] Needs: Detail Submitter needs to provide more detail for this issue to be assessed (see comments). [managed] Priority: 2 Important, as time permits. [managed] Theme: Book Tags Issues related to community book tags Theme: Subjects Type: Epic A feature or refactor that is big enough to require subissues. [managed]
Projects
None yet
Development

No branches or pull requests

2 participants