Mezzanine

screenshot of Mezzanine
react
scss

Mezzanine

An enterprise-class UI design language and React UI library

Overview

The Mezzanine UI project is currently in beta version and is being used by rytass internal projects. It should be noted that there is a possibility of API changes if used in production mode. The project offers a Storybook preview for those interested and provides migration guides for existing Mezzanine users. It is supported on Google Chrome, Edge, Safari, and Firefox browsers.

Features

  • Setup: A quick setup process requiring the creation of a main.scss file.
  • Customize Palette: Allows customization of the default palette.
  • Customize Common System Variables: Customize system variables such as typography, motion, spacing, and z-index.
  • Use Mezzanine Typography: Apply Mezzanine typography to components.
  • Use Mezzanine Transition (Motion): Apply Mezzanine transitions to components.
  • Use Mezzanine z-index: Apply Mezzanine z-index values to components.
  • React Hooks: Provides useful hooks like useComposeRefs, useClickAway, usePreviousValue, useWindowWidth, and more.
  • Development Guidelines: Provides guidelines such as monorepo structure, component naming conventions, props sorting, adding comments to component interfaces, BEM CSS naming, unit tests, and more.

Installation

To fully install Mezzanine UI, the following steps should be followed:

  1. Create a main.scss file or use your preferred filename.
  2. Add the necessary code snippet to the main.scss file.
  3. Import the main.scss file at your root.

Summary

Mezzanine UI is a beta version project used by rytass internal projects. It provides a range of features such as quick setup, customization of palette and system variables, and the usage of Mezzanine typography, transitions, and z-index values. It also offers useful React hooks and follows specific development guidelines. Users should be aware of the possibility of API changes and can refer to migration guides if needed.

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

scss
SCSS

SCSS is a preprocessor scripting language that extends the capabilities of CSS by adding features such as variables, nesting, and mixins. It allows developers to write more efficient and maintainable CSS code, and helps to streamline the development process by reducing repetition and increasing reusability.

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.

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.