Introducing Midtype, a developer platform for SaaS products
Midtype is a platform that helps developers build software products as quickly as possible. It provides every developer with a custom, hosted, GraphQL API backed by a scalable datastore. That API automatically handles users, authentication, and exposes extremely flexible querying capabilities.
A couple months ago, Jay and I started thinking about problems we wanted to solve with software. We wrote down an exhaustive list and went to validate them with users. We had conversations, which led to prototypes, which soon led to writing code for some of our ideas. But it turns out launching a barebones MVP for any SaaS product is still incredibly time consuming, and too much of that stems from getting the simple stuff up an running: a hosted datastore with an authenticated API in front of it.
That’s when we had a revelation: why don’t we just build something to make our lives easier? We are engineers who want to bring our SaaS product ideas to fruition. What if there was a toolkit built specifically to help people like us go from nothing to an MVP in hours rather than weeks?
We like to think of Midtype as a marriage between Airtable and Auth0. Services like Google Sheets and Airtable provide an intuitive and flexible interface for storing data in different formats. There are a host of apps that could be built on top of this functionality alone. Airtable even offers a pretty robust API, making it almost the perfect datastore for building an MVP.
But spreadsheets miss a couple crucial components: data isolation and scalability. You can create forms so that users can append data to a spreadsheet, but without a backend, it’s impossible to allow them to edit their data in the future (or even query for it). Enforcing that type of access control is only possible by integrating an authentication service like Auth0 or Firebase login, and that’s a lot of extra work.
So we set out to fix that. We wanted to build a UI that made it as easy to design a data schema as Airtable and in return, provided a unique, hosted API backed by a scalable datastore with built-in authentication. Users are a first-class primitive in Midtype’s datastore, so you can always control who sees what without writing a single line of server-side code. As a frontend engineer, that shaves weeks of development time.
The frontend datastore of choice these days seems to be NoSQL solutions like Firebase or MongoDB. While easy to implement and save to, these options make it extremely hard to write type-safe frontend code that can scale across a large team. With Typescript gaining more and more steam, and the inherently typed nature of GraphQL APIs, we wanted to build a datastore for SaaS development that made it as easy as possible to ensure developers have guardrails around the format of their data. By defining the schema of your data in the Midtype UI, your backend can ensure that the data you’re sending is valid.
This means we optimize querying and make it easy to do complex searches on data, a challenge for options like Firebase or MongoDB when you have more than a handful of users.
Midtype’s datastore also makes it easy to configure custom access control logic in our UI so that users can only read data they have rights to. We also manage issuing JSON Web Tokens (JWTs) for your app that you include in every request to your API to authenticate users.
We know that a SaaS application is more than just an API and a datastore. We’re working on integrations to make common SaaS features trivial to implement in your Midtype backend, like payments and marketing automation.