Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

pmndrs/leva

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

879 Commits

Repository files navigation

npm (tag) npm bundle size GitHub Workflow Status Discord Shield


A GUI you are going to lava.
Customizable, extensible and beautiful by default.



🚧🚧 This repo is under heavy development 🚧🚧

Features

  • ⭐️ Beautiful by default
  • 🎚 More than 12 different kinds of inputs available
  • 🧐 Smart input type recognition
  • πŸ”Œ Easy-to-make plugins
  • βœ… Keyboard accessible
  • ⚑️ No setup necessary

Installation

npm i leva

Quick start

Simply call the useControls hook from anywhere in your app:

import { useControls } from 'leva'
function MyComponent() {
 const { name, aNumber } = useControls({ name: 'World', aNumber: 0 })
 return (
 <div>
 Hey {name}, hello! {aNumber}
 </div>
 )
}

NOTE: Using Leva with React 18 will cause a console error about createRoot which you can safely ignore, or fix by following the instructions here: discussion

Documentation

Contributors ✨

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!

About

πŸŒ‹ React-first components GUI

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors 42

Languages

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /