Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@elpassion/taco

Package Overview
Dependencies
Maintainers
4
Versions
209
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@elpassion/taco

### TACO UI

  • 0.5.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
93
increased by190.63%
Maintainers
4
Weekly downloads
 
Created
Source

Installation

TACO UI

TACO UI is a system of React components highly based on tailwindcss, it is available as an npm package.
See full documentation here via storybook

npm:

npm install @elpassion/taco

yarn:

yarn add @elpassion/taco

Copy base tailwind config to use tokens

In order to use this library you'll have to generate tokens file by calling initDefaultTheme() and wire it to your tailwind.config.js. Pass package directory to tailwind content Array and install @tailwindcss/forms.

const { join } = require("path");
const { initDefaultTheme } = require("@elpassion/taco");

module.exports = {
  darkMode: "class",
  mode: "jit",
  content: [
    join(__dirname, "./app/**/*.{js,ts,jsx,tsx}"), // << This path may differ depending on your project configuration
    join(__dirname, "./node_modules/@elpassion/taco/**/*.{js,jsx}"), // << This needs to be added to prune styles
  ],
  theme: initDefaultTheme(),
  plugins: [require("@tailwindcss/forms")],
};

Add your own custom theme configures

You have to merge the default theme and custom project config you created:

const { merge } = require('lodash');

const customProjectConfig = {...}

module.exports = {
  ...
  theme: merge(initDefaultTheme(), customProjectConfig),
  ...
};

You can use your own tailwind variables.

  • import appropriate tokenHelpers function
  • create your own config .json file with the configuration of the selected property
  • create your own config .json files with values for chosen component
  • extend tailwind config with them like below:
const { colorsTokenHelpers } = require("@elpassion/taco");

const customProjectConfig = {
  extend: {
    colors: merge(colorsTokenHelpers.getColorsConfig(colors), {
      hoveredFacebookButton: "#f9f9f9",
      hoveredGoogleButton: "#f9f9f9",
    }),
    ...merge(
      ...colorsTokenHelpers.getComponentsColorConfig(
        ["button"],
        importJson,
        colors
      )
    ),
  },
};

The following helpers are currently available:

  • colorsTokenHelpers()
  • radiusTokenHelpers()
  • colorsTokenHelpers()
  • radiusTokenHelpers()

In Taco, we use several packages that also need to be installed if you use some components.

Here is the list:

  • DatePicker - react-datepicker
  • Dropdown: SelectDropdown, AsyncSelect, CreatableSelect or MenuDropdown - react-select
  • Modal - react-modal
  • Carousel - embla-carousel-react
  • Table - @tanstack/react-table
  • WYSIWYG - react-quill

If you want to import any of the above components use :

import { ComponentName } from "@elpassion/taco/ComponentName";

If you add a new package to the design system, please add it to the list above, and what's more important, you have to add this package to peerDependencies in npm-package.json

For icons, we use our own font. If you want to use Taco icons, this font has to be imported. For this purpose add the code below to the main styles file (e.g. globals.css) in your project:


@font-face {
  font-family: "icons";
  src: url("https://elpassion-design-system.s3.eu-west-1.amazonaws.com/fonticon.ttf")
    format("opentype");
}

Optionally (WIP) (Now it's still required for some compoennts to work)

You can use icons locally from icons font or use cdn https://elpassion-design-system.s3.eu-west-1.amazonaws.com/fonticon.ttf TODO:

  • Allow importing font file from npm package

Then use it in your app for example:

import React from "react";
import Button from "@elpassion/taco";

export default function App() {
  return (
    <div className="App">
      <Button {...props} />
    </div>
  );
}

See the contribute guide:

CONTRIBUTE.MD

Keywords

FAQs

Package last updated on 11 Oct 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc