{"id":4477,"date":"2025-08-09T16:34:50","date_gmt":"2025-08-09T16:34:50","guid":{"rendered":"https:\/\/uplatz.com\/blog\/?p=4477"},"modified":"2025-08-28T13:07:19","modified_gmt":"2025-08-28T13:07:19","slug":"ant-design-pocket-book","status":"publish","type":"post","link":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/","title":{"rendered":"Ant Design Pocket Book"},"content":{"rendered":"<p><!-- Ant Design Pocket Book (Wide Layout, Readable Code, Scoped Styles) --><\/p>\n<div style=\"margin: 16px 0;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-4938\" src=\"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-1024x576.jpg\" alt=\"\" width=\"840\" height=\"473\" srcset=\"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-1024x576.jpg 1024w, https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-300x169.jpg 300w, https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-768x432.jpg 768w, https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design.jpg 1280w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/p>\n<style>\n    .wp-antd-pb { font-family: Arial, sans-serif; max-width: 1320px; margin:0 auto; }<br \/>\n    .wp-antd-pb .heading{<br \/>\n      background: linear-gradient(135deg, #e0f2fe, #ccfbf1);<br \/>\n      color:#0f172a; padding:22px 24px; border-radius:14px;<br \/>\n      text-align:center; margin-bottom:18px; box-shadow:0 8px 20px rgba(0,0,0,.08);<br \/>\n      border:1px solid #cbd5e1;<br \/>\n    }<br \/>\n    .wp-antd-pb .heading h2{ margin:0; font-size:2.1rem; letter-spacing:.2px; }<br \/>\n    .wp-antd-pb .heading p{ margin:6px 0 0; font-size:1.02rem; opacity:.9; }<\/p>\n<p>    .wp-antd-pb .grid{<br \/>\n      display:grid; gap:14px;<br \/>\n      grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));<br \/>\n    }<br \/>\n    @media (min-width:1200px){<br \/>\n      .wp-antd-pb .grid{ grid-template-columns: repeat(3, 1fr); }<br \/>\n    }<\/p>\n<p>    .wp-antd-pb .section-title{<br \/>\n      grid-column:1\/-1; background:#f8fafc; border-left:8px solid #0ea5e9;<br \/>\n      padding:12px 16px; border-radius:10px; font-weight:700; color:#0f172a; font-size:1.08rem;<br \/>\n      box-shadow:0 2px 8px rgba(0,0,0,.05); border:1px solid #e2e8f0;<br \/>\n    }<br \/>\n    .wp-antd-pb .card{<br \/>\n      background:#ffffff; border-left:6px solid #0ea5e9;<br \/>\n      padding:18px; border-radius:12px;<br \/>\n      box-shadow:0 6px 14px rgba(0,0,0,.06);<br \/>\n      transition:transform .12s ease, box-shadow .12s ease;<br \/>\n      border:1px solid #e5e7eb;<br \/>\n    }<br \/>\n    .wp-antd-pb .card:hover{ transform: translateY(-3px); box-shadow:0 10px 22px rgba(0,0,0,.08); }<br \/>\n    .wp-antd-pb .card h3{ margin:0 0 10px; font-size:1.12rem; color:#0f172a; }<br \/>\n    .wp-antd-pb .card p{ margin:0; font-size:.96rem; color:#334155; line-height:1.62; }<\/p>\n<p>    \/* Color helpers *\/<br \/>\n    .bg-blue { border-left-color:#0ea5e9 !important; background:#f0f9ff !important; }<br \/>\n    .bg-green{ border-left-color:#10b981 !important; background:#f0fdf4 !important; }<br \/>\n    .bg-amber{ border-left-color:#f59e0b !important; background:#fffbeb !important; }<br \/>\n    .bg-violet{ border-left-color:#8b5cf6 !important; background:#f5f3ff !important; }<br \/>\n    .bg-rose{ border-left-color:#ef4444 !important; background:#fff1f2 !important; }<br \/>\n    .bg-cyan{ border-left-color:#06b6d4 !important; background:#ecfeff !important; }<br \/>\n    .bg-indigo{ border-left-color:#6366f1 !important; background:#eef2ff !important; }<br \/>\n    .bg-slate{ border-left-color:#334155 !important; background:#f8fafc !important; }<\/p>\n<p>    .tight ul{ margin:0; padding-left:18px; }<br \/>\n    .tight li{ margin:4px 0; }<br \/>\n    .mono{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; }<br \/>\n    .muted{ color:#64748b; }<br \/>\n    .wp-antd-pb code{ background:#f1f5f9; padding:0 4px; border-radius:4px; border:1px solid #e2e8f0; }<br \/>\n    .wp-antd-pb pre{<br \/>\n      background:#f5f5f5; color:#111827; border:1px solid #e5e7eb;<br \/>\n      padding:12px; border-radius:8px; overflow:auto; font-size:.92rem; line-height:1.55;<br \/>\n    }<br \/>\n    .q{font-weight:700;}<br \/>\n    .qa p{ margin:8px 0; }<br \/>\n    .qa b{ color:#0f172a; }<br \/>\n  <\/style>\n<div class=\"wp-antd-pb\">\n<div class=\"heading\">\n<h2>Ant Design Pocket Book<\/h2>\n<p>Design system \u2022 Layout &amp; theming \u2022 Forms &amp; tables \u2022 Navigation \u2022 Patterns \u2022 Performance &amp; testing<\/p>\n<\/div>\n<div class=\"grid\"><!-- ===================== SECTION 1 ===================== --><\/p>\n<div class=\"section-title\">Section 1 \u2014 Fundamentals<\/div>\n<div class=\"card bg-blue\">\n<h3>1) What is Ant Design?<\/h3>\n<p>Ant Design (AntD) is a React UI library and design system with high-quality components, consistent design tokens, and enterprise-ready patterns. It ships with layout, navigation, data entry, data display, feedback, and overlay components.<\/p>\n<pre><code class=\"mono\"># Install (React)\r\nnpm i antd @ant-design\/icons\r\n# or with Vite\/CRA\/Next projects<\/code><\/pre>\n<\/div>\n<div class=\"card bg-green\">\n<h3>2) Quick Starter<\/h3>\n<pre><code class=\"mono\">import { Button } from 'antd';\r\nexport default function App(){\r\n  return &lt;Button type=\"primary\"&gt;Hello AntD&lt;\/Button&gt;;\r\n}<\/code><\/pre>\n<p class=\"muted\">Ensure your bundler handles CSS: <code>import 'antd\/dist\/reset.css'<\/code> (v5) in your root.<\/p>\n<\/div>\n<div class=\"card bg-amber\">\n<h3>3) Layout System<\/h3>\n<p>Use <code>Layout<\/code> + <code>Header<\/code>, <code>Sider<\/code>, <code>Content<\/code>, <code>Footer<\/code> for app shells. Grid uses <code>Row<\/code>\/<code>Col<\/code> with 24 columns.<\/p>\n<pre><code class=\"mono\">import { Layout, Menu } from 'antd';\r\nconst { Header, Sider, Content } = Layout;\r\n&lt;Layout&gt;\r\n  &lt;Sider&gt;&lt;Menu items={[{key:'1',label:'Home'}]} \/&gt;&lt;\/Sider&gt;\r\n  &lt;Layout&gt;\r\n    &lt;Header\/&gt;\r\n    &lt;Content style={{padding:24}}&gt;Main&lt;\/Content&gt;\r\n  &lt;\/Layout&gt;\r\n&lt;\/Layout&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-violet\">\n<h3>4) Theming &amp; Tokens (v5)<\/h3>\n<p>Customization via design tokens and <code>ConfigProvider<\/code>. Override colors, radius, font, spacing globally or per component.<\/p>\n<pre><code class=\"mono\">import { ConfigProvider } from 'antd';\r\n&lt;ConfigProvider theme={{ token:{ colorPrimary:'#1677ff', borderRadius:8 } }}&gt;\r\n  &lt;App \/&gt;\r\n&lt;\/ConfigProvider&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-rose\">\n<h3>5) Icons<\/h3>\n<p>Use <code>@ant-design\/icons<\/code>. Keep icon usage consistent with action semantics.<\/p>\n<pre><code class=\"mono\">import { PlusOutlined } from '@ant-design\/icons';\r\n&lt;Button icon={&lt;PlusOutlined \/&gt;} type=\"primary\"&gt;New&lt;\/Button&gt;<\/code><\/pre>\n<\/div>\n<p><!-- ===================== SECTION 2 ===================== --><\/p>\n<div class=\"section-title\">Section 2 \u2014 Forms, Data &amp; Tables<\/div>\n<div class=\"card bg-blue\">\n<h3>6) Forms (Controlled)<\/h3>\n<p><code>Form<\/code> + <code>Form.Item<\/code> manage layout, validation, and submission. Use <code>rules<\/code> and helpers like <code>validateTrigger<\/code>.<\/p>\n<pre><code class=\"mono\">import { Form, Input, Button } from 'antd';\r\nconst [form] = Form.useForm();\r\n&lt;Form form={form} onFinish={values =&gt; console.log(values)} layout=\"vertical\"&gt;\r\n  &lt;Form.Item label=\"Email\" name=\"email\" rules={[{type:'email', required:true}]}\r\n  &gt;&lt;Input\/&gt;&lt;\/Form.Item&gt;\r\n  &lt;Button htmlType=\"submit\" type=\"primary\"&gt;Submit&lt;\/Button&gt;\r\n&lt;\/Form&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-green\">\n<h3>7) Table Basics<\/h3>\n<p>Tables support pagination, sorting, filtering, expandable rows, and virtual scroll. Keep columns minimal and use renderers for custom cells.<\/p>\n<pre><code class=\"mono\">import { Table } from 'antd';\r\nconst columns = [{ title:'Name', dataIndex:'name' }, { title:'Age', dataIndex:'age' }];\r\nconst data = [{ key:1, name:'Alice', age:28 }];\r\n&lt;Table columns={columns} dataSource={data} pagination={{ pageSize:10 }} \/&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-amber\">\n<h3>8) Table Advanced<\/h3>\n<p>Server-side mode: control <code>pagination<\/code>, <code>sorter<\/code>, <code>filters<\/code> via <code>onChange<\/code>. Use <code>rowSelection<\/code> for selection.<\/p>\n<pre><code class=\"mono\">&lt;Table onChange={(p, f, s) =&gt; fetchData(p, f, s)}\r\n  rowSelection={{ onChange:(keys) =&gt; setKeys(keys) }} \/&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-violet\">\n<h3>9) Lists, Cards &amp; Empty States<\/h3>\n<p>Use <code>List<\/code>\/<code>Card<\/code> for non-tabular collections. Always show an <code>Empty<\/code> state with helpful action.<\/p>\n<pre><code class=\"mono\">&lt;List dataSource={items} renderItem={i =&gt; &lt;List.Item&gt;{i.title}&lt;\/List.Item&gt;} \/&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-rose\">\n<h3>10) Upload &amp; Drag-and-Drop<\/h3>\n<p><code>Upload<\/code> supports drag\/drop, progress, and beforeUpload for validation. Store URLs, not files, in your form state.<\/p>\n<pre><code class=\"mono\">&lt;Upload.Dragger action=\"\/api\/upload\" multiple&gt;\r\n  &lt;p&gt;Drop files here&lt;\/p&gt;\r\n&lt;\/Upload.Dragger&gt;<\/code><\/pre>\n<\/div>\n<p><!-- ===================== SECTION 3 ===================== --><\/p>\n<div class=\"section-title\">Section 3 \u2014 Navigation &amp; Feedback<\/div>\n<div class=\"card bg-blue\">\n<h3>11) App Navigation<\/h3>\n<p>Use <code>Menu<\/code>, <code>Breadcrumb<\/code>, <code>Tabs<\/code>, and <code>Dropdown<\/code> to guide users. Keep top-level nav minimal; move details into pages\/tabs.<\/p>\n<pre><code class=\"mono\">&lt;Breadcrumb items={[{title:'Home'},{title:'Users'}]} \/&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-green\">\n<h3>12) Feedback &amp; Messaging<\/h3>\n<p>Non-blocking: <code>message.success()<\/code>. Blocking actions: <code>Modal.confirm()<\/code>. Persistent: <code>notification.open()<\/code>.<\/p>\n<pre><code class=\"mono\">import { message, Modal, notification } from 'antd';\r\nmessage.success('Saved');\r\nModal.confirm({ title:'Delete item?', onOk: handleDelete });\r\nnotification.open({ message:'Build complete', description:'Deployed to prod' });<\/code><\/pre>\n<\/div>\n<div class=\"card bg-amber\">\n<h3>13) Drawer &amp; Modal Patterns<\/h3>\n<p>Use <code>Drawer<\/code> for side panels that don\u2019t block navigation; <code>Modal<\/code> for important confirmations\/forms. Avoid nested modals.<\/p>\n<\/div>\n<div class=\"card bg-violet\">\n<h3>14) Accessibility<\/h3>\n<p>Use semantic props (e.g., <code>aria-*<\/code>), labels for inputs, focus management on dialogs, and high-contrast token themes when needed.<\/p>\n<\/div>\n<div class=\"card bg-rose\">\n<h3>15) Internationalization (i18n)<\/h3>\n<p>Wrap app with <code>ConfigProvider<\/code> locale; load translations for dates\/strings. Keep copy outside components.<\/p>\n<pre><code class=\"mono\">import enUS from 'antd\/locale\/en_US';\r\n&lt;ConfigProvider locale={enUS}&gt;...&lt;\/ConfigProvider&gt;<\/code><\/pre>\n<\/div>\n<p><!-- ===================== SECTION 4 ===================== --><\/p>\n<div class=\"section-title\">Section 4 \u2014 Performance, Testing &amp; Patterns<\/div>\n<div class=\"card bg-blue\">\n<h3>16) Performance Tips<\/h3>\n<ul class=\"tight\">\n<li>Memoize heavy lists and cell renderers.<\/li>\n<li>Use <code>virtual<\/code> list\/table for large datasets.<\/li>\n<li>Prefer controlled forms with minimal re-renders.<\/li>\n<li>Defer offscreen content with lazy loading.<\/li>\n<\/ul>\n<\/div>\n<div class=\"card bg-green\">\n<h3>17) Testing<\/h3>\n<p>Use React Testing Library for components; assert on roles\/labels. Mock network and time for stable tests.<\/p>\n<pre><code class=\"mono\">import { render, screen } from '@testing-library\/react';\r\nrender(&lt;Button&gt;Save&lt;\/Button&gt;);\r\nexpect(screen.getByRole('button',{name:\/save\/i})).toBeInTheDocument();<\/code><\/pre>\n<\/div>\n<div class=\"card bg-amber\">\n<h3>18) Form Patterns<\/h3>\n<p>Use <code>Form.List<\/code> for dynamic arrays; <code>dependencies<\/code> to react to other fields; custom validators for complex rules.<\/p>\n<pre><code class=\"mono\">&lt;Form.List name=\"items\"&gt;{(fields, add) =&gt; (\r\n  &lt;&gt;{fields.map(f =&gt; &lt;Form.Item {...f} name={[f.name,'name']} \/&gt;)} \r\n  &lt;Button onClick={() =&gt; add()}&gt;Add&lt;\/Button&gt;&lt;\/&gt;\r\n)}&lt;\/Form.List&gt;<\/code><\/pre>\n<\/div>\n<div class=\"card bg-violet\">\n<h3>19) Table Patterns<\/h3>\n<p>Editable cells: use <code>Form<\/code> inside table rows. Sticky headers\/columns for dense data. Keep actions consistent (edit, delete, view).<\/p>\n<\/div>\n<div class=\"card bg-rose\">\n<h3>20) Common Pitfalls<\/h3>\n<ul class=\"tight\">\n<li>Overloaded tables: too many columns without grouping or summaries.<\/li>\n<li>Inconsistent spacing when overriding tokens\u2014change tokens, not CSS ad-hoc.<\/li>\n<li>Blocking UX with excessive modals; prefer inline feedback.<\/li>\n<\/ul>\n<\/div>\n<p><!-- ===================== SECTION 5 ===================== --><\/p>\n<div class=\"section-title\">Section 5 \u2014 Quick Q&amp;A<\/div>\n<div class=\"card bg-indigo qa\">\n<h3>21) Interview Q&amp;A \u2014 8 Quick Ones<\/h3>\n<p><b>1)<\/b> <i>AntD vs Material UI?<\/i> AntD is opinionated with enterprise patterns; MUI is more neutral\/flexible. Choose based on team familiarity and design system fit.<\/p>\n<p><b>2)<\/b> <i>Customize theme?<\/i> Use <code>ConfigProvider<\/code> tokens, per-component overrides, or CSS-in-JS classNames sparingly.<\/p>\n<p><b>3)<\/b> <i>Responsive layout?<\/i> Use <code>Grid<\/code> and responsive props (<code>xs<\/code>\u2026<code>xxl<\/code>), hide\/show content with CSS utilities.<\/p>\n<p><b>4)<\/b> <i>Large tables?<\/i> Virtualize, paginate, and push heavy filters server-side.<\/p>\n<p><b>5)<\/b> <i>Form validation?<\/i> Use <code>rules<\/code> &amp; custom validators; show concise error text; mark required fields.<\/p>\n<p><b>6)<\/b> <i>A11y musts?<\/i> Proper labels, keyboard focus for dialogs\/menus, and color contrast in themes.<\/p>\n<p><b>7)<\/b> <i>Next.js integration?<\/i> Import CSS once, avoid SSR-only APIs in client components; handle dynamic imports for heavy widgets.<\/p>\n<p><b>8)<\/b> <i>Design consistency?<\/i> Define tokens, page frame, spacing scale, and component usage guidelines early.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Ant Design Pocket Book Design system \u2022 Layout &amp; theming \u2022 Forms &amp; tables \u2022 Navigation \u2022 Patterns \u2022 Performance &amp; testing Section 1 \u2014 Fundamentals 1) What is Ant <span class=\"readmore\"><a href=\"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/\">Read More &#8230;<\/a><\/span><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2479,2462],"tags":[],"class_list":["post-4477","post","type-post","status-publish","format-standard","hentry","category-ant-design","category-pocket-book"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Ant Design Pocket Book | Uplatz Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ant Design Pocket Book | Uplatz Blog\" \/>\n<meta property=\"og:description\" content=\"Ant Design Pocket Book Design system \u2022 Layout &amp; theming \u2022 Forms &amp; tables \u2022 Navigation \u2022 Patterns \u2022 Performance &amp; testing Section 1 \u2014 Fundamentals 1) What is Ant Read More ...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/\" \/>\n<meta property=\"og:site_name\" content=\"Uplatz Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Uplatz-1077816825610769\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-09T16:34:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-28T13:07:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"uplatzblog\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@uplatz_global\" \/>\n<meta name=\"twitter:site\" content=\"@uplatz_global\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"uplatzblog\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/\"},\"author\":{\"name\":\"uplatzblog\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#\\\/schema\\\/person\\\/8ecae69a21d0757bdb2f776e67d2645e\"},\"headline\":\"Ant Design Pocket Book\",\"datePublished\":\"2025-08-09T16:34:50+00:00\",\"dateModified\":\"2025-08-28T13:07:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/\"},\"wordCount\":510,\"publisher\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ant-Design-1024x576.jpg\",\"articleSection\":[\"Ant Design\",\"Pocket Book\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/\",\"url\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/\",\"name\":\"Ant Design Pocket Book | Uplatz Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ant-Design-1024x576.jpg\",\"datePublished\":\"2025-08-09T16:34:50+00:00\",\"dateModified\":\"2025-08-28T13:07:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#primaryimage\",\"url\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ant-Design.jpg\",\"contentUrl\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ant-Design.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/ant-design-pocket-book\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ant Design Pocket Book\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/\",\"name\":\"Uplatz Blog\",\"description\":\"Uplatz is a global IT Training &amp; Consulting company\",\"publisher\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#organization\",\"name\":\"uplatz.com\",\"url\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/11\\\/Uplatz-Logo-Copy-2.png\",\"contentUrl\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/11\\\/Uplatz-Logo-Copy-2.png\",\"width\":1280,\"height\":800,\"caption\":\"uplatz.com\"},\"image\":{\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Uplatz-1077816825610769\\\/\",\"https:\\\/\\\/x.com\\\/uplatz_global\",\"https:\\\/\\\/www.instagram.com\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/7956715?trk=tyah&amp;amp;amp;amp;trkInfo=clickedVertical:company,clickedEntityId:7956715,idx:1-1-1,tarId:1464353969447,tas:uplatz\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/uplatz.com\\\/blog\\\/#\\\/schema\\\/person\\\/8ecae69a21d0757bdb2f776e67d2645e\",\"name\":\"uplatzblog\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g\",\"caption\":\"uplatzblog\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ant Design Pocket Book | Uplatz Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/","og_locale":"en_US","og_type":"article","og_title":"Ant Design Pocket Book | Uplatz Blog","og_description":"Ant Design Pocket Book Design system \u2022 Layout &amp; theming \u2022 Forms &amp; tables \u2022 Navigation \u2022 Patterns \u2022 Performance &amp; testing Section 1 \u2014 Fundamentals 1) What is Ant Read More ...","og_url":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/","og_site_name":"Uplatz Blog","article_publisher":"https:\/\/www.facebook.com\/Uplatz-1077816825610769\/","article_published_time":"2025-08-09T16:34:50+00:00","article_modified_time":"2025-08-28T13:07:19+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design.jpg","type":"image\/jpeg"}],"author":"uplatzblog","twitter_card":"summary_large_image","twitter_creator":"@uplatz_global","twitter_site":"@uplatz_global","twitter_misc":{"Written by":"uplatzblog","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#article","isPartOf":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/"},"author":{"name":"uplatzblog","@id":"https:\/\/uplatz.com\/blog\/#\/schema\/person\/8ecae69a21d0757bdb2f776e67d2645e"},"headline":"Ant Design Pocket Book","datePublished":"2025-08-09T16:34:50+00:00","dateModified":"2025-08-28T13:07:19+00:00","mainEntityOfPage":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/"},"wordCount":510,"publisher":{"@id":"https:\/\/uplatz.com\/blog\/#organization"},"image":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#primaryimage"},"thumbnailUrl":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-1024x576.jpg","articleSection":["Ant Design","Pocket Book"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/","url":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/","name":"Ant Design Pocket Book | Uplatz Blog","isPartOf":{"@id":"https:\/\/uplatz.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#primaryimage"},"image":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#primaryimage"},"thumbnailUrl":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design-1024x576.jpg","datePublished":"2025-08-09T16:34:50+00:00","dateModified":"2025-08-28T13:07:19+00:00","breadcrumb":{"@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#primaryimage","url":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design.jpg","contentUrl":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2025\/08\/Ant-Design.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/uplatz.com\/blog\/ant-design-pocket-book\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/uplatz.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ant Design Pocket Book"}]},{"@type":"WebSite","@id":"https:\/\/uplatz.com\/blog\/#website","url":"https:\/\/uplatz.com\/blog\/","name":"Uplatz Blog","description":"Uplatz is a global IT Training &amp; Consulting company","publisher":{"@id":"https:\/\/uplatz.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/uplatz.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/uplatz.com\/blog\/#organization","name":"uplatz.com","url":"https:\/\/uplatz.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/uplatz.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2016\/11\/Uplatz-Logo-Copy-2.png","contentUrl":"https:\/\/uplatz.com\/blog\/wp-content\/uploads\/2016\/11\/Uplatz-Logo-Copy-2.png","width":1280,"height":800,"caption":"uplatz.com"},"image":{"@id":"https:\/\/uplatz.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Uplatz-1077816825610769\/","https:\/\/x.com\/uplatz_global","https:\/\/www.instagram.com\/","https:\/\/www.linkedin.com\/company\/7956715?trk=tyah&amp;amp;amp;amp;trkInfo=clickedVertical:company,clickedEntityId:7956715,idx:1-1-1,tarId:1464353969447,tas:uplatz"]},{"@type":"Person","@id":"https:\/\/uplatz.com\/blog\/#\/schema\/person\/8ecae69a21d0757bdb2f776e67d2645e","name":"uplatzblog","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7f814c72279199f59ded4418a8653ad15f5f8904ac75e025a4e2abe24d58fa5d?s=96&d=mm&r=g","caption":"uplatzblog"}}]}},"_links":{"self":[{"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/posts\/4477","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/comments?post=4477"}],"version-history":[{"count":2,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/posts\/4477\/revisions"}],"predecessor-version":[{"id":4939,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/posts\/4477\/revisions\/4939"}],"wp:attachment":[{"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/media?parent=4477"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/categories?post=4477"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/uplatz.com\/blog\/wp-json\/wp\/v2\/tags?post=4477"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}