Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
@nextui-org/theme
Advanced tools
@nextui-org/theme is a customizable theme package for the NextUI library, which provides a set of design tokens and utilities to create consistent and visually appealing user interfaces. It allows developers to easily define and apply themes across their applications.
Custom Theme Creation
This feature allows developers to create custom themes by defining their own color schemes, typography, and other design tokens. The `createTheme` function is used to generate a theme object that can be applied to the application.
import { createTheme } from '@nextui-org/theme';
const myTheme = createTheme({
type: 'dark',
theme: {
colors: {
primary: '#ff4ecd',
secondary: '#fefefe',
background: '#000000'
}
}
});
Theme Provider
The `NextUIProvider` component is used to apply the custom theme to the entire application. By wrapping the application with `NextUIProvider` and passing the custom theme, all components within the application will adhere to the defined theme.
import { NextUIProvider } from '@nextui-org/react';
import { myTheme } from './myTheme';
function App() {
return (
<NextUIProvider theme={myTheme}>
<YourComponent />
</NextUIProvider>
);
}
Using Theme Tokens
This feature allows developers to use theme tokens in their styled components. By using the `styled` function and referencing theme tokens (e.g., `$primary`, `$secondary`), developers can ensure that their components are consistent with the defined theme.
import { styled } from '@nextui-org/react';
const Button = styled('button', {
backgroundColor: '$primary',
color: '$secondary',
padding: '10px 20px',
borderRadius: '5px'
});
styled-components is a popular library for styling React applications using tagged template literals. It allows for defining component-level styles with support for theming. Compared to @nextui-org/theme, styled-components offers more flexibility in defining styles but requires more setup for theming.
Emotion is a performant and flexible CSS-in-JS library that allows developers to style applications with JavaScript. It provides powerful theming capabilities similar to @nextui-org/theme but is more general-purpose and can be used with various frameworks beyond NextUI.
Chakra UI is a simple, modular, and accessible component library that provides a set of building blocks to create React applications. It includes a theming system that allows for easy customization of design tokens, similar to @nextui-org/theme, but with a broader set of pre-built components.
NextUI theme primitives, here you can find the TailwindCSS plugin
, colors
, layout
, spacing
, typography
and some other utilities.
Please refer to the documentation for more information.
yarn add @nextui-org/theme
# or
npm i @nextui-org/theme
Yes please! See the contributing guidelines for details.
This project is licensed under the terms of the MIT license.
FAQs
The default theme for NextUI components
We found that @nextui-org/theme demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.