Hacker News new | ask | show | jobs
Show HN: Keel – A schema-driven back end engine with Go and TypeScript (keel.so)
11 points by tomfrew 828 days ago
Hi HN,

I’m one of the creators of Keel and we're excited (and nervous in equal measures) to be sharing this.

We built Keel on two principles:

1. A backend is much more than just a database. A scalable backend platform should be grounded in engineering best practices and come complete with a full suite of services without having to wire 10 SaaS products together

2. A backend should not be an engineering black box and should be designed from day one to support the entire organisation over time and scale.

Keel is a schema driven backend engine. Define your data model, api actions, permissions, events and jobs in type-safe schemas and get a production-ready backend. All the API plumbing, auth (OIDC/SSO) and core CRUD is handled automatically and you can extend everything with typescript (the core runtime is Go). Your schema actions and custom code are also instantly transformed into internal tooling UI for your whole org.

The Keel platform deploys infrastructure based on your schema’s requirements. You get Postgres, serverless functions, event queues, cron jobs, secret management and multiple environments all wrapped up with OTEL compatible tracing.

We’re very early but we’d love to hear any feedback!

P.S. The Keel runtime is open source (https://github.com/teamkeel/keel) and can be self hosted. The Keel platform then provides fully managed infrastructure and internal tooling. We’ll be launching a BYOC option soon.

1 comments

The demo video of this looks crazy impressive. Would be interesting to see what an LLM could do with this as a building block.
Yeah, the schema driven approach does really lend it to the world of LLMs. We've found that with minimal guidance LLMs can generate schemas, validate them and iterate if necessary.

What's great about this is that once you've got a valid schema you can then guarantee the correctness of the code downstream as well as it being very testable. This text-based abstraction makes it possible to generate a complete production-ready backend with AI rather than trying to get a LLM to write complete applications from scratch.