Skip to content

itsezc/lucid

Repository files navigation

Lucid

Lucid helps build & ship apps that scale infinitely with maximum performance, in record time with amazing DX and no vendor lock-in.

Backends can be very complex, expensive, and non-performant. Lucid helps solve these problems by providing you with a framework that replaces the need for one. By leveraging SurrealDB, a powerful, all-in-one database engine with a typed abstraction acting as an ORM, lucid enables you to ship and scale faster and with ease. This means you don't pay for servers (other than your database), most all of the backend logic is executed on SurrealDB (which is made with Rust and highly performative) and provides full typing so you can focus on your UX and business requirements.

Our goal is to build an enterprise ready framework, and a full testing suite, so that you can sleep in peace knowing your app works just the way you expect it to.

See how we plan on reducing boilerplate code

Usage

To use Lucid, you can install it via NPM (and other package managers):

npm install @lucid-framework/orm

We are currently in the process of building the Docs, which will provide a more indepth guide and examples of how you can utilise Lucid.

Packages

  • ORM - Lucid ORM
  • SurrealDB Client - TS based client for Surreal DB
  • 🚧 Payments - Manage your billing and payments through Lucid

Internally, Lucid has many packages such as schema-generator which handle much of the functionality exposed to you, the developer. We suggest you read the docs to make yourself familiar with the ecosystem.

FAQ

How does it compare with GraphQL / Hasura?
With GraphQL you would have to write a backend, unless you are using a service such as Hasura (which is a layer on top of your DB - incurring additional costs) and types would have to be generated on every build, this could lead to runtime issues if not setup properly and there is an overhead for GraphQL, as well as limited functionality that is limited by the GraphQL spec.

Still, GraphQL can be a great solution and we advice you do your own research to make the right decision.
How does it compare with tRPC?
tRPC is relatively a new library, which limits you by having you write a backend and forces you to use Node on the backend.

Still, tRPC can be a great solution and we advice you do your own research to make the right decision.
Can I use Lucid with React / Vue / Svelte etc.?
Lucid is framework agnostic, meaning you can use it with React, Vue, Svelte, Angular or your framework of choice. We intend to provide packages for popular frameworks such as svelte, down the line.

Maintainers

  • Chiru B. (@itsezc)
  • Drew R. (@DrewRidley)
  • Soya (@soya-miruku)

About

Build apps in record time, with no backend or vendor lock-in & full type safety that scales infinitely - try the new Surreal experience.

Topics

Resources

License

Stars

Watchers

Forks