mui-breakpoint-indicator
v0.3.0
Published
shows you your current mui breakpoint. tiny. allows default position setting.
Readme
MUI Breakpoint Indicator
When developing responsive applications with mui, it's often helpful to be able to easily visualize the current breakpoint. Enter, <BreakpointIndicator />.
How does it work?
You can simply import the component at the top level of your app, just after mui's ThemeProvider (shown below with redux as well):
import { render } from 'react-dom';
import { ThemeProvider, CssBaseline } from '@mui/material';
import { theme } from './path/to/my/theme';
import { MyApp } from './path/to/MyApp';
import { BreakpointIndicator } from 'mui-breakpoint-indicator';
const store = configureStore();
const root = (
<ThemeProvider theme={theme}>
<CSSBaseline />
<BreakpointIndicator />
<MyApp />
</ThemeProvider>
);
ReactDOM.render(root, document.querySelector('#root'));How can it be configured?
the position prop [string, defaults to top-center]
The BreakpointIndicator has an optional position prop with the following type:
type Position =
| 'bottom-center'
| 'bottom-left'
| 'bottom-right'
| 'left-center'
| 'right-center'
| 'top-center'
| 'top-left'
| 'top-right'
;The default is top-center, but you can configure the default to whatever position you prefer, e.g.:
<BreakpointIndicator position="bottom-right" />the visible prop [boolean, defaults to true]
A common use case is to use a tool like this conditionally, e.g.:
const debugMode = useSelector(selectDebugMode);
return (
<div>
{debugMode && <BreakpointIndicator />}
<MyApp />
<div>
)While you can still do the above, BreakpointIndicator accepts a visible prop (defaults to true) where you can pass a debugMode flag, as above:
const debugMode = useSelector(selectDebugMode);
return (
<div>
<BreakpointIndicator debugMode={debugMode} />
<MyApp />
<div>
)The implementation of the visible prop is such that passing visible={false} is a no-op.
How can it be interacted with?
Resize the Viewport
Simply resize the viewport, and watch the indicator change:

Click to Rotate
Clockwise
You can click on the indicator to temporarily rotate it to the next position, clockwise.

Counter-Clockwise
You can ctrl+click the indicator to rotate it counter-clockwise.

NOTE: When you refresh or rerender your app it will revert to whatever the
positionprop is set to (or the default,top-centerif none is set), so be sure to just set thepositionprop if you want it to always be in a particular area of the screen.
Can I use this if I'm not using MUI?
No. At this time, this component is directly tied to some mui underpinnings.
