Query is a one-file system that uses SQLite to cover most of the full-stack development and infrastructure needs for small websites.
Query Mental Model
This is a mental model to guide you when working with Query.
- I do not need a database server (PostgreSQL or MySQL), as I can connect to my SQLite databases remotely using the Query APIs, the CLI, and the functions.
- I do not need a JavaScript runtime (NodeJS, Deno, or Bun), as Query offers its own.
- I do not need a JavaScript backend framework (NextJS, Remix or Astro), as Query provides functions to serve Pages and APIs.
- I do not need a caching system (Redis) for my function, as Query caches them in SQLite and serves them.
- I do not need a storage system (S3) for my assets, as Query stores them in SQLite and serves them.
- I do not need a scaffolding tool to generate code, as Query offers its own.
- I do not need to develop a back office admin area, thanks to the Query generator, as I can build one just by executing a command.
- I can deploy in a couple of seconds to Query.
- I can distribute it in multiple regions, thanks to Fly.io and LiteFS.
The following links are related to each mental model concept.
[1] Query API
[1] Shell
[1] Functions
[2] Query JavaScript Runtime
[2] Runtime Compatibility
[3] Functions
[3] File-System Based Router
[5] Query Generator
[6] Assets
[7] Query Generator
[7] Query Generator Templates
[8] Query Function CLI
[8] Query Assets CLI
Top comments (1)
Great article! I am working on an open-source DSL which will give superpowers to SQLite. Here is the article I wrote: dev.to/harshthedev/meet-rayql-a-sc...