![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.
@oieduardorabelo/use-navigator-online
Advanced tools
React Hooks to detect when your browser is online/offline.
React Hooks to detect when your browser is online/offline using window.navigator.onLine
API.
To install it:
yarn add @oieduardorabelo/use-navigator-online
An online demo is available at CodeSandbox:
If you've any issues, open an issue with a CodeSandbox link with your issue
In your app, you can add:
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
let details = useNavigatorOnline(options)
...
}
details
object is composed of:details.isOnline
: It is a Boolean
value, true
when onlinedetails.isOffline
: It is a Boolean
value, true
when offlinedetails.status
: Returns a default String
, when online it is "online"
and when offline it is "offline"
. You can customize it using options
paramoptions
object is composed of:options.whenOnline
: Can be any valid React children. It will replace the String
returned in details.status
when online.options.whenOffline
: Can be any valid React children. It will replace the String
returned in details.status
when offline.options.startOnline
: To support SSR, you can control the initial rendering mode using this option. It is a boolean value to determine which state your application should use first: true
for "online-first" or false
for "offline-first". Defaults to true
/online-first. The value will be synced with window.navigator.onLine
inside an useEffect
when your application is rendered in the browser.Using isOnline
and isOffline
flags:
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
let { isOnline, isOffline } = useNavigatorOnline();
return (
<div>
{isOnline && <span>We are online!</span>}
{isOffline && <span>We are offline!</span>}
</div>
);
}
Using default status
:
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
// will toggle between "online" and "offline"
let { status } = useNavigatorOnline();
return <div>Browser now is {status}!</div>;
}
Custom values for status
with whenOnline
and whenOffline
:
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
// you can pass any React children in "whenOnline" and "whenOffline"
let { status } = useNavigatorOnline({
whenOnline: <h1>WE ARE ONLINE!</h1>,
whenOffline: <h4>Damn, offline :(</h4>,
});
return <div>{status}</div>;
}
No extra configuration is needed to use it on SSR:
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
let { status } = useNavigatorOnline();
return <div>{status}</div>;
}
You can initialize your application offline-first. This will sync with window.navigator.onLine
when your application starts, using a useEffect
. Trigerring a re-render of your application.
import { useNavigatorOnline } from '@oieduardorabelo/use-navigator-online';
function App() {
let { status } = useNavigatorOnline({
startOnline: false
});
return <div>{status}</div>;
}
FAQs
React Hooks to detect when your browser is online/offline.
The npm package @oieduardorabelo/use-navigator-online receives a total of 464 weekly downloads. As such, @oieduardorabelo/use-navigator-online popularity was classified as not popular.
We found that @oieduardorabelo/use-navigator-online 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.