Skip to content

Implement Query Parser for Search Interfaces #2038

@arkid15r

Description

@arkid15r

Description:
We need to implement a query parser that will be used by both the OWASP API and OWASP UI search interfaces. The parser should support a GitHub-like syntax for filtering entities based on their attributes.

Requirements:

  • Basic string equality checks

    • Example: author:name
  • Comparison operators for numeric fields

    • Example: stars:>100, stars:<50, issues:>=10
  • Ability to combine multiple conditions (logical AND; potential future support for OR).

  • Output should be structured in a way that can be easily consumed by backend search logic (e.g., dict or list of conditions).

Possible Features for Later Iterations:

  • Quoted strings for multi-word values: project:"OWASP ZAP"
  • OR conditions: (author:alice OR author:bob)
  • Negations: -archived:true

Suggested Python Packages to Explore:

Benefits:

  • Unifies search syntax across OWASP projects.
  • Enables advanced filtering and more precise search results.
  • Provides a foundation for future improvements in search capabilities.

Are you going to work on implementing this?

  • Yes
  • No

Additional context

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

In progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions