Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

FEAT GUI: Add dataset navigation and cards

Aperta
#2,747 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
react, typescript
Ambito
frontend

Direzione di ricerca

Start with frontend/src/components/Sidebar/Navigation.tsx, App.tsx, components/Layout, components/Scenarios/ScenarioCatalog, services/api.ts, and types/index.ts; first review the summary and browsing contracts from items 1–2. Add the Datasets navigation and route under components/Datasets, then verify real-data cards, filters, states, accessibility, and route behavior with component and routing tests.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

feature-request GUI not ready yet
Is your feature request related to a problem? Please describe.

CoPyRIT has no dataset exploration section. Users cannot see which seed datasets are already in memory or compare their size, modalities, and harm labels before choosing one.

Work item 3 of 17 in #2744. Technical prerequisites: the summary/browsing contracts from items 1-2. This item remains not ready yet until its turn in the series.

Describe the solution you'd like

Add a Datasets navigation entry and route with a responsive set of dataset cards. Use the existing Fluent UI theme, spacing, navigation, error, and loading patterns.

Cards should show the dataset name, meaningful example/prompt counts, modalities, harm categories when supplied, and loaded/source information. Use the API's count semantics rather than deriving totals from the current page. Unknown counts are not zero; missing harm labels read as not labeled.

Add name search, appropriate facets from the summary contract, sorting, clear filters, and explicit empty/error/retry states. Browsing must work without an active target. Preserve route/search state through browser Back/Forward and route refresh where applicable. Establish the dataset-detail route contract for the next item without presenting a dead action as a completed feature.

Acceptance criteria:

  • Datasets is accessible from primary navigation and supports direct navigation.
  • Cards use real API data, with correct missing-data and large-count handling.
  • Search, filtering, sorting, clear filters, empty memory, and no-match states work.
  • Keyboard activation, accessible names, focus, narrow viewports, and existing themes are supported.
  • Catalog viewing causes no provider downloads or attack creation.
  • Component and routing tests cover success, failure, and navigation behavior.
Describe alternatives you've considered, if relevant

Do not introduce a new UI library, a separate visual identity, provider-loading controls, or a second API client. Full prompt browsing arrives in item 4; provider discovery/loading is items 9-11.

Additional context

Start with frontend\src\components\Sidebar\Navigation.tsx, App.tsx, components\Layout, components\Scenarios\ScenarioCatalog, services\api.ts, and types\index.ts. Put feature components under components\Datasets and follow the frontend style/test instructions.

Lingua principale
Python
Stelle
4.5k
Fork
896
Merge medio
3g 8h
PR unite (30g)
191

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di microsoft/PyRIT

Tutte le issue di microsoft/PyRIT

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.