classnames
react-query
Our great sponsors
classnames | react-query | |
---|---|---|
94 | 190 | |
17,349 | 27,869 | |
- | - | |
8.3 | 9.1 | |
8 days ago | almost 2 years ago | |
JavaScript | TypeScript, JS | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
classnames
-
Gatsby blog: Building SEO-friendly blog with BCMS code starter
The component needs the classname dependency and a search icon which I referenced to work. So install the classname package and download the search icon below.
-
The 20 most used React libraries
classnames: Makes dynamic CSS class application a breeze. Learn more
-
Beyond the Basics: Exploring TailwindCSS and Linaria in Next.js - From Installation to Performance Optimization
But of course, it is a button, so it could have multiple variants: primary and secondary(you can increase the number of customizable params, but we will limit it to 1, variant). To implement this you can use any library for combining classnames, for example, classnames, clsx. Let’s use the classic one, "classnames".
-
Is it okay to split long lists of class names across multiple lines? Why don't you?
Use classnames and you can comma delimited your class names where needed.
-
Creating an Image Upload Modal with Crop and Rotate Functionality in React
To get started with our image modal implementation, i'll assume you already have a React project set up. For UI i’m using Tailwind CSS. But you can use any UI library as your wish. For the image cropping and rotating functionality, we'll be utilizing the react-easy-crop library. This library provides a simple and intuitive way to crop and interact with images and videos within a React component. We will also use the heroicons and classnames libraries in our tutorial. To install all the libraries and their dependencies, open your terminal and navigate to your project's directory. Run the following command:
-
TailwindCSS & Template Literals
Save yourself some headache and use https://github.com/JedWatson/classnames
-
Dynamic CSS based on props: conditional className or style? (using CSS modules)
There is an NPM module called classnames that makes this a bit easier: https://www.npmjs.com/package/classnames
-
Type Safe Tailwind and SCSS Modules
To use the global Tailwind types from styles/cssClasses.d.ts, I've leveraged a lot of work from this post, so credit goes there for a lot of the complex TypeScript wizardry that makes things work. In essence, it builds upon the classnames (or clsx) to provide a helper function that gives us with the type safety we're after. This cleverness means we get type checking that works with whitespace, multiple classes (e.g., "container p-5")and arbitrary values (e.g., "border-[5px]"). The input "container p-5 invalid-class" provides the nifty error message:
-
Simplify Your Tailwind CSS Workflow with tailwind-fun
but I wouldn't recommend it, because I think the point of using tailwind is to not having to abstract class into component based style. it even better to write tailwind classes into the html directly and to use tailwind-fun sparingly and only if you needed to add logic to your classes. tailwind-fun purpose is more like of https://www.npmjs.com/package/classnames rather than any other css library
-
For tailwind users, how do you quickly make sense of what's going on in your html/jsx without semantic css class names? For instance `card`, `card--text`, `card--title` conveys a lot of information that i've felt missing so far in my tailwind journey.
Use the classnames library, that way I can group the utility classes together (one line) and break them up into multiple lines, and additionally have some of them be conditional based on variables/parameters;
react-query
-
20 Essential Parts Of Any Large Scale React App
react-query
-
Some Very Cool (Underrated maybe) React Libraries
React Query: This library makes it easy to manage data in your React applications, from fetching to caching and updating data. It offers a simple, powerful, and flexible API for handling data and keeping your UI in sync with your data. https://github.com/tannerlinsley/react-query
-
Do I need a fetching library in React?
useQuery (react-query) (+) all from above (+) even more features (-) more complex, even the examples are complex, has more aggressive defaults (re-fetching every 2s)
-
Is there any redux-saga equivalent for zustand?
see here Overview
-
React Query Codegen from OpenAPI
Rapini is a new tool that can generate custom React Query hooks using OpenAPI (Swagger) files.
-
React hooks for 28 RxJS operators
React Query is the gold standard for using async data declaratively with hooks. I ended up needing to modify even my simple useTimer hook to work more like useQuery to take multiple keys in order to work as an inner observable for other operators.
-
Goodbye, useEffect - Reactathon 2022
For most situations, I would recommend using a library like React Query. It handles a lot of common data-fetching boiler plate and already accounts for this useEffect() issue. Also, it supports Suspense if you want to use that.
-
Managing application cache with react-query, and code generation.
At this point, I want to move on to the react-query cache management library. Give a brief overview and see how you can improve your developer experience with cache using this library.
-
When to use a hook, and when to use a service?
There isn't the "service" concept in React. If you need to send off data you can just do so with fetch. If you need to load data and cache it so it can be used across components and unmounts, then something like react-query is what I'd recommend. But it's basically a combination of React Context, useEffect, and useState to manage the cache and lifecycle of a request.
-
What would you consider to be a must for a modern 2022 dev stack?
react-query is pretty neat too. I default to that for most projects unless it's something unusual
What are some alternatives?
clsx - A tiny (239B) utility for constructing `className` strings conditionally.
SWR - React Hooks for Data Fetching
tailwind-merge - Merge Tailwind CSS classes without style conflicts
axios - Promise based HTTP client for the browser and node.js
chakra-ui - ⚡️ Simple, Modular & Accessible UI Components for your React Applications
redux-saga - An alternative side effect model for Redux apps
styled-components - Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
rtk-query - Data fetching and caching addon for Redux Toolkit
linaria - Zero-runtime CSS in JS library
zustand - 🐻 Bear necessities for state management in React
React CSS Modules - Seamless mapping of class names to CSS modules inside of React components.
Recoil - Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React.