- Component based approach
- No SCSS,CSS files. Therefore no need extra configuration
- Inline styles can be used with react-native
- Linter, IDE support
- Theming support
- Server-side rendering
- Biggest community
- Slower than CSS based approach
- Styles get into blob. Which means:
- App size gets bigger than CSS based approach
- Browsers download CSS and JS files on parallel. So we cannot able to use this feature
- Rebuilds app when styles changed
- Similar to styled-components pros
- But much faster
- Inspired from glamorous and styled-components
- Similar to styled-components cons
- Paypal maintainer
- Big community
- Uses POJO to pass styles
- Fastest
- Very tiny library
- Small community compared to others
- Needs CSS, SCSS files
- Less resources to deal with usage and issues etc
- Some performance benchmarks
- Why You Shouldn’t Style React Components With JavaScript
- I swore never to use CSS in JS, here are 6 reasons why I was wrong
- CSS in JS: The Argument Refined
- What's so bad about in-line CSS?
- CSS in JavaScript: The future of component-based styling
- The Debate Around “Do We Even Need CSS Anymore?”
- Stop using CSS in JavaScript for web development
- Why (not) use CSS-in-JS?