The config web stack for business apps - build internal tools, client portals, web apps, admin panels, dashboards, web sites, and CRUD apps with YAML or JSON.
OTHER License
Lowdefy is a source available web framework that enables you to:
Create internal tools, web apps, admin panels, BI dashboards, web sites and CRUD apps with simple YAML or JSON config.
Lowdefy config is easy to read, write, copy, paste, or template. Config when you can, but code when you need to.
Make API calls and read and write to your databases with minimal config. Build web apps that connect your data.
Lowdefy's Blocks, Requests, Operators, Actions, Auth Providers, and Adapters can all be extended with plugins, making it the most flexible config web stack. Powered by NPM, Lowdefy's plugin system allows developers to bundle modules using their preferred packages. Even unpublished plugins can be added to your repository, enabling easy use of project-specific code. See the plugin docs and the plugin project example for more details.
Lowdefy runs as a Next.js app in production, so you can deploy it anywhere that supports Next.js deployment. Deploy with Vercel, Docker, or anything that runs Next.js apps.
Authentication is built on top of Auth.js, providing the full flexibility and security from one of the most popular open-source auth layers. SSO, SAML, 2FA, no problem. Google, Okta, Auth0, and more - bring your own provider.
Lowdefy's minimal config is designed to be easy to read, write, and understand, making it simple to copy, paste, review changes, or pick up where others left off. Defining apps using a structured schema speeds up development in teams of any size.
Lowdefy supports building multi-page apps with both public and private pages, serving a wide range of use cases. Role-based access control (RBAC) allows for easy implementation of secure, granular access control where needed.
Lowdefy apps are built using:
We are working on expanding the list of connections, and you can vote for the ones you need here.
Run:
pnpx lowdefy@latest init && pnpx lowdefy@latest dev
This will create a file called lowdefy.yaml
in the current working directory that contains the configuration for a Lowdefy app (as well as a .gitignore
) and launch a local development server at http://localhost:3000. Make changes in the lowdefy.yaml
file to see them reflect in the app.
The simplest way to contribute to Lowdefy is by creating custom plugins like Blocks, Actions, Requests, Operators, or Auth Adapters and Providers, and publishing them to NPM for the community's benefit.
Easily add and develop plugins in any Lowdefy project; refer to the plugins project example for a pnpm monorepo setup to jumpstart local plugin development.
When publishing your plugin to NPM, include lowdefy
in the name for easy discovery, and share it on our Github Discussions to inform the community.
Run Lowdefy servers locally by adding your Lowdefy config to the app/..
folder. Use one of the following scripts to the server:
pnpm app:cli:dev
: Starts the development server with the config provided in the app
folder, useful for developing locally.pnpm app:cli:build
: Creates a production build of your lowdefy app for the config config provided in the app
folder.pnpm app:cli:start
: Starts the production server of your lowdefy app built using the build
command output.See the project
package.json
scripts for more predefined scripts.
Please also see CONTRIBUTING.md.
Convert a v3 app to V4 - See the v4 conversion notes.
All changes to this project are documented in CHANGELOG.md.
If you discover a vulnerability, please follow the guide in SECURITY.md to disclose this to us responsibly.
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to follow the Contributor Covenant code of conduct. See CODE_OF_CONDUCT.md for more.