Retool offers a software component library that features tables, charts, forms, wizards, and lists. Retool provides a complete set of building blocks out of the box. Retool provides those blocks out of the box so users can focus on assembling UI, not inventing it from scratch. Instead of hunting down the best React table library, Retool helps build apps in a few minutes by dragging and dropping.
Users can connect to most databases with a REST, GraphQL or gRPC API. When a query is run, the Retool backend proxies the request to the backend. There is no need to worry about storing isFetching in Redux or handling errors from the backend. Retool manages this. Read in data from MongoDB, join it to Postgres with SQL, and POST the result to Stripe's API. The user only writes the things that are custom to the app, like the SQL queries, POST requests, or data transformers.
Retool is hackable, so if the user can write it with JavaScript and an API, it can be build in Retool. JavaScript can be written almost anywhere inside of Retool. Wrap an expression with double brackets like{{ Math.max(select1.value, 10) }} and it’ll execute as sandboxed JS. Using Transformers, users can write larger, reusable blocks of code for manipulating data. There’s also a native API for directly interacting with components and queries via JS.
Retool can be deployed on the cloud, or on one's own infrastructure. In either case users can acess data no matter where it is, even while keeping Retool entirely within a VPC and behind a VPN, with Retool self-hosted.