yarn add levauseControls brings is a smart GUI for your React apps and your creative coding endeavors:
- π§ Smart defaults, your GUI will always pick the best input type for your data
- π€³ Mobile-ready, all inputs work perfectly on mobile
- πͺ Type safety,
useControlsis built from the ground up with typescript, all types are inferred from your code.
useControls isn't a component library.
- As-you-type filtering of inputs.
- You can modify number inputs by either dragging over the input label or inner label.
- The lib automatically calculates the number input step based on the initial value magnitude and significant digits.
- Increase / decrease numbers with arrow keys, with alt (
Β±0.1) and shift (Β±10) modifiers support. - Draggable pane.
- String
- Boolean
- Number
- Range
- Interval
[min,max] - Point2d
[x,y]or{x,y} - Point3d
[x,y,z]or{x,y,z} - Color
#hexand{r,g,b,a} - Select
- Spring
{tension,friction,mass} - Image
Simply call the useControls hook from anywhere in your app.
Your component will update whenever the values defined in the hook are changed!
import { useControls } from 'leva'
function MyComponent() {
const { myValue } = useControls({ myValue: 10 })
return myValue
}Thanks goes to these wonderful people (emoji key):
Gianmarco π€ π» |
David Bismut π€ π» |
Han π¨ |
Andrew Prifer π€ |
Aria π€ |
Marco Ludovico Perego π€ |
Marco Fugaro π€ |
Ivan Rossi π |
thephoenixofthevoid π |
This project follows the all-contributors specification. Contributions of any kind welcome!