@basemark/common
v0.1.3
Published
Common domain components — tables, charts, maps, katex
Readme
@basemark/common
General-purpose components for Markdown — cards, tabs, accordions, alerts, media embeds, and more, styled against a shadcn-compatible theme. Not domain-specific — see @basemark/bio/@basemark/charts/@basemark/chem for those.
Install
bun add @basemark/core @basemark/commonUsage
import { createRegistry, renderMarkdown } from '@basemark/core';
import { registerCommonComponents } from '@basemark/common';
const registry = createRegistry();
registerCommonComponents(registry);
renderMarkdown(':::card{title="Hello"}\nSome content.\n:::', registry);In React, use @basemark/react's MarkdownRenderer instead of calling renderMarkdown directly:
import { MarkdownRenderer } from '@basemark/react';
<MarkdownRenderer source={':::card{title="Hello"}\nSome content.\n:::'} registry={registry} />;Components
Layout & containers
card— bordered container with an optional titlecolumns— lays child blocks side by side in a gridtabs/tab-panel— switchable panel group
UI elements
button— link or button stylingbadge— small status labelalert— callout boxseparator— divider lineaccordion/accordion-item— collapsible sectionscarousel— scrollable slide trackpopover— click-to-open panel- table — plain GFM pipe-table syntax, themed automatically (not a directive)
Media embeds
video— YouTube or Vimeo, from a normal share URLaudio— Spotify or SoundCloud, from a normal share URL
Coming soon
- Mermaid diagrams (flowcharts, Gantt charts, etc.)
- KaTeX math rendering
- Sortable tables
- Maps (MapLibre/Leaflet)
- Citations (BibTeX)
- JSON/tree viewers
- More shadcn-inspired components (dialog, dropdown menu, tooltip)
Bio components (protein structures, sequences, variants, ...) are a separate package — see @basemark/bio. Chart components (ECharts) are also separate — see @basemark/charts.
