{
    "normalize": {
        "name": "Normalize",
        "description": "Normalizes styles and elements between browsers.",
        "category": "layout",
        "priority": -1,
        "source": {
            "css": ["../normalize.scss"]
        }
    },



    "base": {
        "name": "Base",
        "description": "Defines styles and helper classes for CSS, and a robust component system for JavaScript.",
        "category": "layout",
        "priority": 1,
        "source": {
            "css": ["base.scss"]
        }
    },



    "typography": {
        "name": "Typography",
        "description": "Variable font scaling and text styling for headers, paragraphs, lists, and other text based elements.",
        "category": "component",
        "type": "layout",
        "priority": 2,
        "source": {
            "css": ["components/typography.scss"]
        }
    },
    "form": {
        "name": "Form",
        "description": "Classes for input fields and form structuring.",
        "category": "component",
        "type": "layout",
        "priority": 3,
        "source": {
            "css": ["components/form.scss"]
        }
    },
    "code": {
        "name": "Code",
        "description": "Styles for code related HTML tags.",
        "category": "component",
        "type": "layout",
        "priority": 4,
        "source": {
            "css": ["components/code.scss"]
        }
    },
    "flex": {
        "name": "Flex",
        "description": "Flexbox based grid and layout. Responsive support through different block sizes.",
        "category": "component",
        "type": "layout",
        "priority": 5,
        "require": ["base"],
        "source": {
            "css": ["components/flex.scss"]
        },
        "version": "2.1.0"
    },
    "grid": {
        "name": "Grid",
        "description": "Fluid float based grid with multiple column support. Responsive support through different column sizes.",
        "category": "component",
        "type": "layout",
        "priority": 6,
        "require": ["base"],
        "source": {
            "css": ["components/grid.scss"]
        }
    },
    "responsive": {
        "name": "Responsive",
        "description": "Responsive classes for mobile, tablet and desktop resolutions.",
        "category": "component",
        "type": "layout",
        "priority": 100,
        "source": {
            "css": ["components/responsive.scss"]
        }
    },



    "accordion": {
        "name": "Accordion",
        "description": "Allows collapsing and expanding of multiple sections of content.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/accordion.scss"],
            "js": ["components/accordion.js"]
        }
    },
    "blackout": {
        "name": "Blackout",
        "description": "Blacks out the viewport while other components are being displayed.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base", "loader"],
        "source": {
            "css": ["components/blackout.scss"],
            "js": ["components/blackout.js"]
        }
    },
    "breadcrumb": {
        "name": "Breadcrumb",
        "description": "Navigation for hierarchical trails.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/breadcrumb.scss"]
        }
    },
    "button": {
        "name": "Button",
        "description": "A typical button. You click it.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/button.scss"]
        }
    },
    "buttonGroup": {
        "name": "Button Group",
        "description": "Groups multiple buttons by collapsing spacing in between to visually mimic a single button.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base", "button"],
        "source": {
            "css": ["components/button-group.scss"]
        }
    },
    "carousel": {
        "name": "Carousel",
        "description": "Cycles through items using a slide or fade animation.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/carousel.scss"],
            "js": ["components/carousel.js"]
        }
    },
    "divider": {
        "name": "Divider",
        "description": "Separates sections of content.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "source": {
            "css": ["components/divider.scss"]
        },
        "version": "1.4.0"
    },
    "drop": {
        "name": "Drop",
        "description": "A contextual menu that is dropped down (or up, left, right) and displayed relative a target element.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/drop.scss"],
            "js": ["components/drop.js"]
        }
    },
    "flyout": {
        "name": "Flyout",
        "description": "Hierarchical sitemap through nested menus.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/flyout.scss"],
            "js": ["components/flyout.js"]
        }
    },
    "icon": {
        "name": "Icon",
        "description": "Image sprite map support with optional rotation.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": [],
        "source": {
            "css": ["components/icon.scss"]
        }
    },
    "input": {
        "name": "Input",
        "description": "Replaces selects, checkboxes, and radios with custom elements.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base", "drop"],
        "source": {
            "css": ["components/input.scss"],
            "js": ["components/input.js"]
        }
    },
    "inputGroup": {
        "name": "Input Group",
        "description": "Group input fields with addons by collapsing spacing in between.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base", "form"],
        "source": {
            "css": ["components/input-group.scss"]
        }
    },
    "label": {
        "name": "Label",
        "description": "Labels and badges for simplistic information.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/label.scss"]
        }
    },
    "lazyLoad": {
        "name": "Lazy Load",
        "description": "Defer loading of images and elements until they scroll into view.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/lazy-load.scss"],
            "js": ["components/lazy-load.js"]
        }
    },
    "loader": {
        "name": "Loader",
        "description": "Animated Loaders and spinners used for processing and loading states.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/loader.scss"]
        },
        "version": "1.1.0"
    },
    "mask": {
        "name": "Mask",
        "description": "Conceal an element by masking its content with a transparent overlay.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/mask.scss"],
            "js": ["components/mask.js"]
        },
        "version": "1.1.0"
    },
    "matrix": {
        "name": "Matrix",
        "description": "Arranges multiple elements of variable sizes into a uniform grid with exact spacing in between.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/matrix.scss"],
            "js": ["components/matrix.js"]
        }
    },
    "modal": {
        "name": "Modal",
        "description": "An informational window displayed above content and utilized for workflow interactions.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base", "blackout"],
        "source": {
            "css": ["components/modal.scss"],
            "js": ["components/modal.js"]
        }
    },
    "notice": {
        "name": "Notice",
        "description": "Notification boxes for displaying informational, error, warning, or success messages.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/notice.scss"]
        }
    },
    "offCanvas": {
        "name": "Off Canvas",
        "description": "Contextual sidebars positioned outside the viewport until activated.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/off-canvas.scss"],
            "js": ["components/off-canvas.js"]
        },
        "version": "1.4.0"
    },
    "pagination": {
        "name": "Pagination",
        "description": "Divides content into multiple pages through a list of numerical links.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/pagination.scss"]
        }
    },
    "pin": {
        "name": "Pin",
        "description": "Pin an element within the bounds of its parent and follow the position of the scroll.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/pin.scss"],
            "js": ["components/pin.js"]
        }
    },
    "popover": {
        "name": "Popover",
        "description": "Contextual popup to display relative to a target element.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base", "tooltip"],
        "source": {
            "css": ["components/popover.scss"],
            "js": ["components/popover.js"]
        }
    },
    "progress": {
        "name": "Progress",
        "description": "A progress bar. It shows the progress of something.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/progress.scss"]
        }
    },
    "showcase": {
        "name": "Showcase",
        "description": "Lightbox styled image gallery with optional categorization.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base", "blackout"],
        "source": {
            "css": ["components/showcase.scss"],
            "js": ["components/showcase.js"]
        }
    },
    "stalker": {
        "name": "Stalker",
        "description": "Monitors the scroll of an element and notifies a target when a marker is reached.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "js": ["components/stalker.js"]
        }
    },
    "step": {
        "name": "Step",
        "description": "Navigation grouped into consecutive steps.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/step.scss"]
        },
        "version": "1.3.0"
    },
    "switch": {
        "name": "Switch",
        "description": "Binary switch for on and off states.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/switch.scss"]
        },
        "version": "1.3.0"
    },
    "table": {
        "name": "Table",
        "description": "Provides styles for tables and their common use cases.",
        "category": "component",
        "type": "element",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/table.scss"]
        }
    },
    "tab": {
        "name": "Tab",
        "description": "Organizes multiple sections of content into toggleable tabs.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/tab.scss"],
            "js": ["components/tab.js"]
        }
    },
    "toast": {
        "name": "Toast",
        "description": "Provides feedback about an operation through a timed popup.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/toast.scss"],
            "js": ["components/toast.js"]
        },
        "version": "1.4.0"
    },
    "tooltip": {
        "name": "Tooltip",
        "description": "Contextual box displayed relative to a target element while hovering.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/tooltip.scss"],
            "js": ["components/tooltip.js"]
        }
    },
    "typeAhead": {
        "name": "Type Ahead",
        "description": "Monitors an input field and triggers a lookup of data to render in a clickable menu.",
        "category": "component",
        "type": "module",
        "priority": 10,
        "require": ["base"],
        "source": {
            "css": ["components/type-ahead.scss"],
            "js": ["components/type-ahead.js"]
        }
    }
}
