Skip to content

Get started

DreamKit is a set of tools and utilities that help you develop applications in a safe way.

You may think that some of the tools presented below are unnecessary or too exotic, but each of them has been carefully studied to ALWAYS and EFFORTLESSLY meet the following characteristics.

Simplicity

Simple concepts with no apparent relationship between them, but when combined they reach their full potential.

Flexible

There is no imposition when working with DreamKit, all the tools are optional, but it is true that working with all of them eliminates friction.

Single source of truth

Write once and use it everywhere, from data schemas to metadata.

TypeScript always first

The code will always be typed safely. When this goal cannot be achieved, DreamKit will generate metadata or even go to the limits of adjusting your TypeScript code in development to achieve its goal.

Secure

You will not see an input that has no validation, simply because the tools themselves will not allow you to write unsafe code.

Testable

Although it may seem that the constructors create complex objects, they are really simple functions and objects that can be tested with secure typing.

Agnostic

Currently DreamKit has been created to work with SolidStart, but due to how it has been built (IoC), it is extrapolable to other environments. The same goes for all the classes and functions that you create with DreamKit, the infrastructure part (Node.js and HTTP server) is abstracted from the core so all your code could be executed in the future in other environments such as Electron or Deno.