![Create React App Officially Deprecated Amid React 19 Compatibility Issues](https://cdn.sanity.io/images/cgdhsj6q/production/04fa08cf844d798abc0e1a6391c129363cc7e2ab-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Create React App Officially Deprecated Amid React 19 Compatibility Issues
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
@endiliey/react-ideal-image
Advanced tools
Adaptive image component
I need React component to asynchronously load images, which will adapt based on network, which will allow a user to control, which image to load.
Read the introduction.
This module is distributed via npm which is bundled with node and
should be installed as one of your project's dependencies
:
npm install react-ideal-image --save
This package also depends on
react
,prop-types
, andreact-waypoint
. Please make sure you have those installed as well.
Example for create-react-app (you need v2 for macros) based project
import React from 'react'
import lqip from 'lqip.macro'
import IdealImage from 'react-ideal-image'
import image from './images/doggo.jpg'
const lqip = lqip('./images/doggo.jpg')
const App = () => (
<IdealImage
placeholder={{lqip}}
srcSet={[{src: image, width: 3500}]}
alt="doggo"
width={3500}
height={2095}
/>
)
This is the list of props that you need to pass to the component.
function(state: object)
| optional, default icon is provided based on state object
This function decides what icon to show based on the current state of the component.
function(icon: string, state: object)
| optional, default message is provided based on the icon and state object.
This function decides what message to show based on the icon (returned from getIcon prop) and the current state of the component.
function({})
| optional, no useful default
This function is called as soon as the component enters the viewport and is used to generate urls based on width and format if props.srcSet
doesn't provide src field.
number
| required
The Height of the image in px.
object
| required
This provides a map of the icons. By default, the component uses icons from material design, implemented as React components with the SVG element. You can customize icons
const icons = {
load: DownloadIcon,
//...
}
string
| optional, defaults to 'xhr'
This prop takes one of the 2 options, xhr
and image
. Read more about it here.
object
| required
This takes one of the 2 objects
// To add a solid color placeholder
{
color: ''
}
or
/**
* To add a low quality image
* [Low Quality Image Placeholder](https://github.com/zouhir/lqip)
* [SVG-Based Image Placeholder](https://github.com/technopagan/sqip)
* base64 encoded image of low quality
*/
{
lqip: ''
}
Read more about it here.
function({})
| optional, default function is provided which decides based on the device network.
This function decides if image should be downloaded automatically. The default function returns false
for a 2g
network,
for a 3g
network it decides based on props.threshold
and for a 4g
network it returns true
by default.
array[srcType: object]
| required
This provides an array of sources of different format and size of the image. Read more about it here.
The srcType
has below structure
srcType = {
width: number, // required
src: string,
size: number,
format: string, // one of the 'jpeg' or 'webp'
}
object
| required
This provides a theme to the component. By default, the component uses inline styles, but it is also possible to use CSS modules and override all styles.
const theme = {
placeholder: {
backgroundSize: 'cover',
backgroundRepeat: 'no-repeat',
position: 'relative',
},
// ...
}
number
| optional
Tells how much to wait in milliseconds until consider the download to be slow.
number
| required
Width of the image in px.
<Img>
Thanks goes to these people (emoji key):
stereobooster 💻 📖 🚇 ⚠️ | Ivan Babak 📖 | Arun Kumar 📖 | Andrew Lisowski 💻 | Timothy Vernon ⚠️ | vishalShinde 📖 | Evgeniy Kumachev 📖 |
---|---|---|---|---|---|---|
John Munn 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Code - MIT
Icons - Apache License 2.0
FAQs
Adaptive image component
The npm package @endiliey/react-ideal-image receives a total of 3,221 weekly downloads. As such, @endiliey/react-ideal-image popularity was classified as popular.
We found that @endiliey/react-ideal-image demonstrated a not healthy version release cadence and project activity because the last version was released 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.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.