diff --git a/app/src/components/LibraryCard.test.tsx b/app/src/components/LibraryCard.test.tsx index 65b9eb14f6..2ed264f44e 100644 --- a/app/src/components/LibraryCard.test.tsx +++ b/app/src/components/LibraryCard.test.tsx @@ -8,6 +8,11 @@ describe('LibraryCard', () => { expect(screen.getByText('matplotlib')).toBeInTheDocument(); }); + it('renders the description for a javascript library', () => { + render(); + expect(screen.getByText(/Powerful interactive charts for the browser/i)).toBeInTheDocument(); + }); + it('renders the language chip in the corner when language is provided', () => { render(); expect(screen.getByLabelText('Language: R')).toHaveTextContent('R'); diff --git a/app/src/components/LibraryCard.tsx b/app/src/components/LibraryCard.tsx index a63a8e52da..f0222f9095 100644 --- a/app/src/components/LibraryCard.tsx +++ b/app/src/components/LibraryCard.tsx @@ -14,6 +14,9 @@ const DESCRIPTIONS: Record = { letsplot: 'Grammar of graphics by JetBrains. Interactive.', ggplot2: 'The reference grammar of graphics. R’s expressive plotting standard.', makie: 'High-performance Julia visualization. CairoMakie ships publication-quality static charts.', + chartjs: 'Simple, flexible HTML5-canvas charts. The popular JS default.', + d3: 'Data-driven SVG. Low-level, maximum control on the web.', + echarts: 'Powerful interactive charts for the browser. Vast chart catalog.', }; interface LibraryCardProps {