Rapid Prototyping with Hasura: Fifteen minutes to a published app with zero lines of code
As developers, we are already familiar with benefit of low-ops/no-ops tooling. We enjoy having the questions of scale, guaranteed uptime, and dedicated support as features we can toggle on and off.
In this quick video, I want to demonstrate how these tools support rapid-prototyping. With low-ops, you're applications is already built on a resilient stack from day-one, and is ready to scale and mature with your business objectives.
In this video I'll run through database modelling with visual feedback, database procurement and adding an API layer with Hasura Cloud, which we'll then finish off with iterating over an admin interface for backend tooling.
Our featured stack will be:
DBDiagram.io for our database modelling, utilizing their open-sourced DSL for descriptive modelling.
Heroku provides our Postgres database. We'll specifically be utilizing the integration with Hasura itself to provision the database and take our transformed DSL from DBDiagram to Postgres SQL statements.
Mockeroo is a mock-data generator that allows us to create prototype content quickly and descriptively.
Hasura provides the generated API for our content and is the basis of our application.
Retool is the hosted "internal tool builder" that lets us quickly iterate on ideas with a visual-first approach, deploying both development versions and production-ready releases.
For a short-hand guide to the following video, you can jump to the following topics on the timeline.
00:00 Introduction to rapid prototyping
00:58 Creating a project in Hasura
01:19 Working with DBDiagram.io
05:50 Creating our tables in Postgres
08:10 Creating mock data with Mockeroo
10:00 Importing mock data
11:20 Working with Retool
Let me know if you have other rapid prototyping tools that you're working with alongside Hasura. Join our community on Discord and you can find me there @jesse – thanks for reading!
Let us know if you have any questions while trying these out! You can hit us up on github discussions / discord if you need any help!