/suid

A port of Material-UI (MUI) built with SolidJS.

Primary LanguageTypeScriptMIT LicenseMIT

SolidJS User Interface Design (SUID)

workflow-badge license-badge

A port of Material-UI (MUI) built with SolidJS

SUID is all a set of utils and components ported from MUI Core and much more.

MUI has one of the largest development communities on the scene, a long history, is used by large corporations, its level of customization is very detailed and has a future ahead. Why reinvent the wheel? The MUI problem is React and this is where SUID comes in.

The main idea behing the project is to create a bridge between the MUI and SUID repository for syncing the incoming changes. This is possible thanks to tools integrated in SUID like codemod (a React to Solid transformer).

With this smart target in mind, the project avoids becoming another library that could fall into oblivion, avoiding all its complexities, developing under the shadow of MUI.

Packages

Name Version Description
@suid/material material-npm A port of Material-UI (MUI) built with SolidJS.
@suid/icons-material icons-material-npm Material Design icons as SVG SolidJS components.
@suid/codemod codemod-npm Tool for migrating MUI React code to SUID SolidJS.
@suid/vite-plugin vite-plugin-npm SUID integration plugin for Vite.
@suid/styled-engine styled-engine-npm Styled engine used by @suid/system.
@suid/system system-npm Styles system used by suid packages.
@suid/base base-npm Unstyled base components used by @suid/material.
@suid/css css-npm CSS render in JS.
@suid/types types-npm Types used by suid packages.
@suid/site site-npm SUID website.

Installation

npm install @suid/material

Resources

Roadmap

For details about the project status go here.

Development

Requirements

Startup

git clone https://github.com/swordev/suid
cd suid
pnpm install
pnpm start

Contributing

To contribute to the project, follow these steps:

  1. Fork this repository and clone it.
  2. Install the dependencies: pnpm install.
  3. Create a branch: git checkout -b <branch_name>.
  4. Make your changes and create the changeset file: pnpm changeset.
  5. Add your changes: git add .
  6. Commit your changes: git commit -m '<commit_message>'.
  7. Push to the original branch: git push origin <branch_name>.
  8. Create the pull request.

License

Distributed under the MIT License. See LICENSE file in each package for more information.