Calcite Design System

screenshot of Calcite Design System
react
tailwind

A monorepo containing the packages for Esri's Calcite Design System

Overview

The Calcite Design System is a robust monorepo developed by Esri, designed to streamline the creation of user-friendly applications. This design system offers a comprehensive set of tools and styles that promote a cohesive look and feel across various platforms. With a focus on enhancing user experiences and ensuring accessibility, the Calcite Design System is an ideal solution for developers looking to implement efficient and effective design principles in their projects.

Features

  • Comprehensive Package Collection: Includes a variety of pre-built components, making it easy to find and integrate the elements you need.
  • Accessibility Focused: Built with accessibility in mind, ensuring all users can enjoy the applications built with this design system.
  • Responsive Design: Components are designed to be fully responsive, adapting seamlessly to different screen sizes and devices.
  • Customizable Themes: Offers customizable themes so developers can tailor the appearance to fit branding and user preferences.
  • Documentation and Support: Extensive documentation available provides guidance and examples, along with community support for troubleshooting.
  • Consistent UI Components: Delivers a set of UI components that ensure a consistent experience across applications, reducing the design effort.
  • Integration Ready: Easily integrates with various development environments and frameworks, simplifying the implementation process.
react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

ui-kit
UI Kits & Components

A UI kit provides developers with a set of reusable components that can be easily integrated into a website or application. These components are pre-designed with consistent styling and functionality, allowing developers to save time and effort in the design and development process. UI kits can be either custom-built or third-party, and often include components for buttons, forms, typography, icons, and more.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.

rollup
Rollup

RollupJS is a popular and efficient JavaScript module bundler that takes the code from multiple modules and packages them into a single optimized file, minimizing the overall size of the application and improving its performance.

Storybook

Storybook is a tool for developing and testing UI components in isolation. It provides a sandbox environment where you can experiment with different props and states to see how your component responds.

Stylelint

Stylelint is a modern linter for CSS that helps you avoid errors and enforce consistent styling conventions. It provides rules for detecting errors and warnings, and can be configured to match your specific project's requirements.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.

web-components
Web Components

Web components provide a way to create reusable, encapsulated UI components using standard web technologies such as HTML, CSS, and JavaScript. They allow developers to create complex UI components that can be easily shared across multiple projects and frameworks. Web components are built using four main specifications: Custom Elements, Shadow DOM, HTML Templates, and ES Modules.