polymarket-ui
v1.1.6
Published
A React component library for building Polymarket-style UIs.
Readme
Polymarket UI SDK
A React component library for building Polymarket-style UIs.
Installation
npm install polymarket-uiUsage
- Wrap your app with ThemeProvider:
import { ThemeProvider } from "polymarket-ui";
function App() {
// You can configure the default theme (true = dark mode, false = light mode)
return <ThemeProvider defaultDarkMode={true}>{/* Your app content */}</ThemeProvider>;
}- Use components:
import { MarketPageWidget, OrderBookWidget, TradingPanelWidget, useThemeContext } from "polymarket-ui";
function MyMarketPage() {
const { isDarkMode, toggleDarkMode } = useThemeContext();
return (
<div>
<button onClick={toggleDarkMode}>Toggle {isDarkMode ? "Light" : "Dark"} Mode</button>
<MarketPageWidget />
{/* Or use individual components */}
<OrderBookWidget />
<TradingPanelWidget currentPrice={75} maxAmount={1000} />
</div>
);
}Features
- 🌗 Dark/Light mode support with ThemeProvider
- 📊 Market charts and order books
- 💰 Trading panels
- 💬 Comments section
- 📱 Responsive design
- 🎨 Customizable styling with Tailwind CSS
Components
MarketPageWidget: A complete market page layoutOrderBookWidget: Real-time order book displayTradingPanelWidget: Trading interface with buy/sell optionsMarketChartWidget: Price chart visualizationCommentsWidget: Discussion and comments sectionNavbarWidget: Navigation bar
Hooks
useThemeContext: Access and control theme settingsuseMediaQuery: Media query hook
Styling
This package uses Tailwind CSS for styling. Make sure to include Tailwind CSS in your project:
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -pUpdate your tailwind.config.js:
/** @type {import('tailwindcss').Config} */
export default {
content: ["./src/**/*.{js,jsx,ts,tsx}", "./node_modules/polymarket-ui/**/*.{js,jsx,ts,tsx}"],
darkMode: "class",
theme: {
extend: {},
},
plugins: [],
};