Skip to main content
ProComponents is a professional component library designed for enterprise-level applications. Built on top of Ant Design, it provides powerful, feature-rich components for building complex business applications.

Component Suite

ProTable

Advanced data table with built-in search, filtering, pagination, and CRUD operations

ProForm

Enhanced form system with multiple layouts, validation, and submission handling

ProLayout

Complete page layout solution with navigation, header, footer, and breadcrumbs

ProCard

Flexible card container with tabs, collapse, split layouts and statistics

ProList

Structured list component for displaying collection data with rich interactions

ProDescriptions

Display key-value data in a structured, readable format with editing support

ProField

Unified field component supporting 30+ value types for display and editing

ProSkeleton

Loading placeholder components for page, list, and descriptions layouts

ProProvider

Global configuration provider for themes, internationalization, and tokens

Key Features

Enterprise-Ready

All components are designed with enterprise requirements in mind:
  • Production-tested: Battle-tested in thousands of applications
  • Performance optimized: Efficient rendering and data handling
  • Accessibility: WCAG 2.1 compliance built-in
  • Type safety: Full TypeScript support with comprehensive type definitions

Advanced Data Handling

Components provide sophisticated data management capabilities:
  • Request integration: Built-in support for async data fetching
  • State management: Automatic state handling with actions and refs
  • Caching: SWR-based data caching for optimal performance
  • Pagination & filtering: Server-side and client-side data operations

Rich Value Types

ProComponents supports 30+ value types out of the box:
  • text - Plain text display
  • textarea - Multi-line text
  • digit - Numeric input with formatting
  • money - Currency formatting
  • percent - Percentage display
  • option - Action buttons

Design Philosophy

Schema-Driven

ProComponents uses a schema-based approach where component configuration is declarative:
const columns = [
  {
    title: 'Name',
    dataIndex: 'name',
    valueType: 'text',
    search: true,
  },
  {
    title: 'Amount',
    dataIndex: 'amount',
    valueType: 'money',
    sorter: true,
  },
];

Unified API

Similar components share consistent APIs:
  • All data components accept columns prop
  • All support request for async data
  • All provide actionRef for imperative actions
  • All integrate with form validation

Composable

Components are designed to work together:
<ProLayout>
  <PageContainer>
    <ProCard>
      <ProTable columns={columns} />
    </ProCard>
  </PageContainer>
</ProLayout>

Getting Started

Installation

pnpm install @ant-design/pro-components

Basic Usage

import { ProTable } from '@ant-design/pro-components';

const Demo = () => {
  return (
    <ProTable
      columns={[
        { title: 'Name', dataIndex: 'name' },
        { title: 'Age', dataIndex: 'age', valueType: 'digit' },
      ]}
      request={async () => {
        const data = await fetchData();
        return { data, success: true };
      }}
    />
  );
};

With Provider

Wrap your app with ProProvider for global configuration:
import { ProProvider } from '@ant-design/pro-components';

const App = () => {
  return (
    <ProProvider
      token={{ colorPrimary: '#1890ff' }}
      intl={enUSIntl}
    >
      <YourApp />
    </ProProvider>
  );
};

Browser Support

  • Modern browsers (Chrome, Firefox, Safari, Edge)
  • Electron applications
  • Last 2 versions of major browsers
IE11 support was dropped in ProComponents 3.0. For legacy browser support, use version 2.x.

Next Steps

ProTable Guide

Learn about the most powerful data table component

ProForm Guide

Master form creation with ProForm layouts

Quickstart

Get started with practical examples

API Reference

Complete API documentation for all components

Build docs developers (and LLMs) love