DEV Community

Cover image for A List of Useful NPM Packages for React/Next JS Developers
Jon Snow
Jon Snow

Posted on • Originally published at democoding.in

A List of Useful NPM Packages for React/Next JS Developers

Check out the original blog where we share a list of more than 15 npm packages.


https://democoding.in/list-of-useful-npm-package-for-reactjs


A curated list of useful NPM packages for React developers.

1. React Icons

React Icons npm

React Icons is a collection of popular icons from popular icon packs such as Font Awesome, Material Design Icons, etc. It is a very useful package for React developers as it provides a wide range of icons to choose from.

Install React Icons

npm i react-icons 
Enter fullscreen mode Exit fullscreen mode

Example

import { FaBeer } from "react-icons/fa"; function Question() { return ( <h3> Lets go for a <FaBeer />? </h3> ); } 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-icons

Github
https://github.com/react-icons/react-icons

Official Website
https://react-icons.github.io/react-icons/


2. React Select

React Select npm

React Select is a flexible and beautiful Select Input control for ReactJS with multiselect, autocomplete, async and creatable support. It is a very useful package for React developers as it provides a wide range of features to choose from.

Install React Select

npm i react-select 
Enter fullscreen mode Exit fullscreen mode

Example

import React, { useState } from 'react'; import Select from 'react-select'; const options = [ { value: 'chocolate', label: 'Chocolate' }, { value: 'strawberry', label: 'Strawberry' }, { value: 'vanilla', label: 'Vanilla' }, ]; export default function App() { const [selectedOption, setSelectedOption] = useState(null); return ( <div className="App"> <Select defaultValue={selectedOption} onChange={setSelectedOption} options={options} /> </div> ); } 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-select

Github
https://github.com/JedWatson/react-select/tree/master

Official Website
https://react-select.com/home


3. React Bootstrap

React Bootstrap npm

React Bootstrap is a popular front-end framework for React developers. It is a very useful package for React developers as it provides a wide range of components to choose from.

Install React Bootstrap

npm i react-bootstrap 
Enter fullscreen mode Exit fullscreen mode

Example

import Button from 'react-bootstrap/Button'; import Card from 'react-bootstrap/Card'; function BasicExample() { return ( <Card style={{ width: '18rem' }}> <Card.Img variant="top" src="holder.js/100px180" /> <Card.Body> <Card.Title>Card Title</Card.Title> <Card.Text> Some quick example text to build on the card title and make up the bulk of the card's content. </Card.Text> <Button variant="primary">Go somewhere</Button> </Card.Body> </Card> ); } export default BasicExample; 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-bootstrap

Github
https://github.com/react-bootstrap/react-bootstrap

Official Website
https://react-bootstrap.github.io/


4. react-chartjs-2

react-chartjs-2 npm

react-chartjs-2 is a popular charting library for React developers. It is a very useful package for React developers as it provides a wide range of charts to choose from.

Install react-chartjs-2

npm i react-chartjs-2 chart.js 
Enter fullscreen mode Exit fullscreen mode

Example
https://react-chartjs-2.js.org/examples/

import React from 'react'; import { Chart as ChartJS, ArcElement, Tooltip, Legend } from 'chart.js'; import { Doughnut } from 'react-chartjs-2'; ChartJS.register(ArcElement, Tooltip, Legend); const data = { labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'], datasets: [ { label: '# of Votes', data: [12, 19, 3, 5, 2, 3], backgroundColor: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', 'rgba(255, 206, 86, 0.2)', 'rgba(75, 192, 192, 0.2)', 'rgba(153, 102, 255, 0.2)', 'rgba(255, 159, 64, 0.2)', ], borderColor: [ 'rgba(255, 99, 132, 1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)', ], borderWidth: 1, }, ], }; export default function ShowChart() { return <Doughnut data={data} />; } 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-chartjs-2

Github
https://github.com/reactchartjs/react-chartjs-2

Official Website
https://react-chartjs-2.js.org/



https://democoding.in/list-of-useful-npm-package-for-reactjs


5. Swiper

Swiper npm

Swiper is a popular mobile touch slider with hardware-accelerated transitions. It is a very useful package for React developers as it provides a wide range of features to choose from.

Install Swiper

 npm i swiper 
Enter fullscreen mode Exit fullscreen mode

Example
https://swiperjs.com/demos/

import React from 'react'; // Import Swiper React components import { Swiper, SwiperSlide } from 'swiper/react'; // Import Swiper styles import 'swiper/css'; import 'swiper/css/pagination'; import 'swiper/css/navigation'; import './styles.css'; // import required modules import { Autoplay, Pagination, Navigation } from 'swiper/modules'; export default function App() { return ( <> <Swiper spaceBetween={30} centeredSlides={true} autoplay={{ delay: 2500, disableOnInteraction: false, }} pagination={{ clickable: true, }} navigation={true} modules={[Autoplay, Pagination, Navigation]} className="mySwiper" > <SwiperSlide>Slide 1</SwiperSlide> <SwiperSlide>Slide 2</SwiperSlide> <SwiperSlide>Slide 3</SwiperSlide> <SwiperSlide>Slide 4</SwiperSlide> <SwiperSlide>Slide 5</SwiperSlide> <SwiperSlide>Slide 6</SwiperSlide> <SwiperSlide>Slide 7</SwiperSlide> <SwiperSlide>Slide 8</SwiperSlide> <SwiperSlide>Slide 9</SwiperSlide> </Swiper> </> ); } 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/swiper

Github
https://github.com/nolimits4web/Swiper

Official Website
https://swiperjs.com/


6. react-tabs

react-tabs npm

react-tabs is a popular tab component for React developers. It is a very useful package for React developers as it provides a wide range of features to choose from.

Install react-tabs

npm i react-tabs 
Enter fullscreen mode Exit fullscreen mode

Example

import { Tab, Tabs, TabList, TabPanel } from 'react-tabs'; import 'react-tabs/style/react-tabs.css'; export default () => ( <Tabs> <TabList> <Tab>Title 1</Tab> <Tab>Title 2</Tab> </TabList> <TabPanel> <h2>Any content 1</h2> </TabPanel> <TabPanel> <h2>Any content 2</h2> </TabPanel> </Tabs> ); 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-tabs

Github
https://github.com/reactjs/react-tabs

Official Website
https://reactcommunity.org/react-tabs/


7. react-dropzone

react-dropzone npm

react-dropzone is a popular drag and drop file uploader for React developers. It is a very useful package for React developers as it provides a wide range of features to choose from.

Install react-dropzone

npm i react-dropzone 
Enter fullscreen mode Exit fullscreen mode

Example

import React from 'react'; import {useDropzone} from 'react-dropzone'; const Basic = (props)=>{ const {acceptedFiles, getRootProps, getInputProps} = useDropzone(); const files = acceptedFiles.map(file => ( <li key={file.path}> {file.path} - {file.size} bytes </li> )); return ( <section className="container"> <div {...getRootProps({className: 'dropzone'})}> <input {...getInputProps()} /> <p>Drag 'n' drop some files here, or click to select files</p> </div> <aside> <h4>Files</h4> <ul>{files}</ul> </aside> </section> ); } export default Basic; 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-dropzone

Github
https://github.com/react-dropzone/react-dropzone

Official Website
https://react-dropzone.js.org/

Important links

  1. Create a Drag-and-Drop zone in React with react-dropzone
  2. Upload Images with React-Dropzone

8. react-toastify

react-toastify npm

react-toastify is a popular toast notification for React developers. It is a very useful package for React developers as it provides a wide range of features to choose from.

Install react-toastify

npm i react-toastify 
Enter fullscreen mode Exit fullscreen mode

Example

import React from 'react'; import { ToastContainer, toast } from 'react-toastify'; import 'react-toastify/dist/ReactToastify.css'; function App(){ const notify = () => toast('🦄 Wow so easy!', { position: "top-right", autoClose: 5000, hideProgressBar: false, closeOnClick: true, pauseOnHover: true, draggable: true, progress: undefined, theme: "light", }); return ( <div> <button onClick={notify}>Notify!</button> <ToastContainer /> </div> ); } export default App; 
Enter fullscreen mode Exit fullscreen mode

NPM package
https://www.npmjs.com/package/react-toastify

Github
https://github.com/fkhadra/react-toastify

Official Website
https://fkhadra.github.io/react-toastify/introduction


Check out the original blog where we share a list of more than 15 npm packages.


https://democoding.in/list-of-useful-npm-package-for-reactjs



Thank you for giving your valuable time!

If you found these helpful, share them with your mates.


Check high-value resources

CSS Generator


Thanks for Reading ❤️! Check my website Demo coding for updates about my latest CSS Animation, CSS Tools, and some cool web dev tips. Let's be friends!

Don't forget to subscribe to our channel : Demo code

Top comments (1)

Collapse
 
ameliasmith profile image
Amelia Smith

Thank you for share