Ant Design
An enterprise-class UI design language and React-based implementation.
Features
- An enterprise-class UI design language for web applications.
- A set of high-quality React components out of the box.
- Written in TypeScript with complete define types.
- A npm + webpack + dva front-end development workflow.
Environment Support
Let's build a better antd together
antd
is an open source project; improvements are welcomed. If you are interested in contributing to antd
, you can watch this repository, join in discussion, or try to implement some features which have been accepted. Actually, there are many ways to contribute. And we are always happy to offer collaborator permission for some active contributors.
Install
npm install antd
Usage
import { DatePicker } from 'antd';
ReactDOM.render(<DatePicker />, mountNode);
And import style manually:
import 'antd/dist/antd.css'; // or 'antd/dist/antd.less'
Use modularized antd
-
Use babel-plugin-import (Recommended)
// .babelrc or babel-loader option { "plugins": [ ["import", { libraryName: "antd", style: "css" }] // `style: true` for less ] }
Then you can import components from antd, equivalent to import manually below.
// import js and css modularly, parsed by babel-plugin-import import { DatePicker } from 'antd';
-
Manually import
import DatePicker from 'antd/lib/date-picker'; // for js import 'antd/lib/date-picker/style/css'; // for css // import 'antd/lib/date-picker/style'; // that will import less
TypeScript
// tsconfig.json
{
"compilerOptions": {
"moduleResolution": "node",
"jsx": "preserve",
"allowSyntheticDefaultImports": true
}
}
Note:
- set
allowSyntheticDefaultImports
to preventerror TS1192: Module 'react' has no default export
.- Don't use @types/antd, antd provide a built-in ts definition already.
ts-import-plugin with modularized antd
Use{
loader: "ts-loader", // or awesome-typescript-loader
options {
getCustomTransformers: () => ({
before: [ tsImportPluginFactory({ libraryName: "antd", style: "css" }) ]
})
}
}
Internationalization
See i18n.
Links
- Home page
- UI library
- Change Log
- Official Scaffold Tool
- Development Tool
- Scaffold Market
- rc-components
- Mobile UI
- Motion
- Developer Instruction
- Versioning Release Note
- FAQ
- CodePen boilerplate for bug reports
- Awesome Ant Design
- Customize Theme
Development
$ git clone git@github.com:ant-design/ant-design.git
$ npm install
$ npm start
Open your browser and visit http://127.0.0.1:8001 , see more at https://github.com/ant-design/ant-design/wiki/Development .
Contributing
We welcome all contributions. Please read our CONTRIBUTING.md first. You can submit any ideas as pull requests or as GitHub issues. If you'd like to improve code, check out the Development Instructions and have a good time! :)