An open-source, self-hosted, low-code framework to build internal tools, web apps, admin panels, BI dashboards, workflows, and CRUD apps with YAML or JSON.

Overview

Lowdefy

Discord

Tweet Follow

Tests Maintainability Test Coverage Codecov Total alerts Language grade: JavaScript

Lowdefy is an open-source (Apache-2.0) low-code framework that lets you build web apps with YAML or JSON configuration files. It is great for building admin panels, BI dashboards, workflows, and CRUD apps.

Advantages of writing internal tools in YAML or JSON

  • All apps use the same structured config schema, this makes it easy to debug large apps or pick up where others left off.
  • Nothing is hidden in a GUI. This allows you to do basic essential stuff, like copy, paste, find, replace, review changes etc. which makes developing apps more productive.
  • App config is just data, thus you can even develop scripts to create and manage your apps.
  • YAML files work with your favorite developer and source control tools.

How Lowdefy apps work ๐Ÿ‘‰ https://docs.lowdefy.com

Lowdefy apps are built using:

  • ๐Ÿ“ฆ Blocks are the visual part of the app, the React components. Lowdefy provides a set of default block types but app capabilities can be extended with custom blocks.
  • โš™๏ธ Operators are the functions that are used to express logic within an app. Lowdefy has many built in easy to use operator functions for creating dynamic applications with ease, however, custom javascript operators can also be loaded.
  • โšก๏ธ Actions are triggered by events, like clicking a button or loading a page. When events are triggered, a list of javascript functions can be called. Lowdefy has a set of useful actions, but applications functionality can be enriched by adding custom Lowdefy actions.
  • ๐Ÿ“ฃ Requests make calls to external services to hydrate applications with data or post data to external services. Lowdefy doesn't have any data storage built in. Instead, it provides connections to external services like databases and APIs.

We are working on expanding the list of connections, and you can vote for the ones you need here.

Lowdefy apps are self-hosted

Our goal is to make it easy to run Lowdefy apps anywhere. Lowdefy app servers are also stateless which makes it easy to run apps in serverless environments. Currently you can host Lowdefy apps:

Quick start

Run:

npx lowdefy@latest init && npx 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.

Examples

CRUD example

This example shows patterns to implement a data admin app which allows users to view, create new, edit and delete data records.

Survey example

This is a simple customer survey example built with Lowdefy. With this example we demonstrate how simple it is to define a public webform and thank you page in Lowdefy.

Case management (ticketing) system example

This example focuses on building a rich UI for a hypothetical case management app, in a customer relations setting.

Movies reporting example

This example demonstrates useful patterns for building a BI report/dashboard pages in Lowdefy. It connects to a MongoDB database with the Atlas Movies sample dataset pre-loaded.

Other Lowdefy packages and resources

More Lowdefy links

Changelog

All changes to this project are documented in CHANGELOG.md.

Contributing

Please see CONTRIBUTING.md.

Security

If you discover a vulnerability, please follow the guide in SECURITY.md to disclose this to us responsibly.

Code of conduct

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.

Licence

Apache-2.0

Comments
  • Fix block methods

    Fix block methods

    Closes #ISSUE_NUMBER

    What are the changes and their implications?

    • Fix CallMethod action.
    • Cli to load .env
    • Fix echarts: Do not break if dataset.source is null.
    • Dependency updates.
    • Feat throw during build if events is not array.
    • Fix engine and actions-core tests.
    • Fix lowdefy global.

    Checklist

    • [ ] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [ ] Code has been formatted with Prettier
    • [ ] Edits from maintainers are allowed
    opened by Gervwyk 11
  • Move to pnpm

    Move to pnpm

    Closes ~#ISSUE_NUMBER~

    What are the changes and their implications?

    This PR changes the pacakge manager used by Lowdefy to pnpm, which is a better fit, and has less DX issues compared to yarn 2/3 with pnp.

    It also changes the package manager used by the CLI to manage Lowdefy apps to pnpm, as this is needed to make plugin development experience work. It also makes more sense to only use one package manager, compared to suppoting multiple different pacakge managers with their idiosyncrasies.

    BREAKING CHANGE: This does mean that Lowdefy will need to install pnpm to use Lowdefy. Nodejs's corepack feature does make this a simple process. A check and error message was added to the CLI to guide users to installing pnpm

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [x] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by SamTolmay 9
  • Add V4 requests

    Add V4 requests

    Closes ~#ISSUE_NUMBER~

    What are the changes and their implications?

    This PR starts to add requests to the @lowdefy/api and @lowdefy/client packages.

    Checklist

    • [ ] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [ ] Code has been formatted with Prettier
    • [ ] Edits from maintainers are allowed
    opened by SamTolmay 9
  • Fix label validation style render bug.

    Fix label validation style render bug.

    Closes ~#ISSUE_NUMBER~

    What are the changes and their implications?

    This PR fixes the bug in which the validate styles were not being applied correctly. These included border color not changing; color of feedback in extra not changing; and the icon not being displayed in the correct position, as well as not changing color. The fix for the component border color involved setting the status property of the relative components. The fix for the feedback in the extra involved changing how the classes were applied. The fix for the icon involved changing the classes applied to the icon.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by StephanieJKS 8
  • feat: Added plugins actions-core.

    feat: Added plugins actions-core.

    Closes #978

    What are the changes and their implications?

    The default lowdefy actions are now available as a actions-core plugin.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by ghost 7
  • Remove GraphQL and replace with Fastify and SWR

    Remove GraphQL and replace with Fastify and SWR

    Closes #640 Closes #841

    What are the changes and their implications?

    Checklist

    • [x] Pull request is made to the "v4" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by SamTolmay 7
  • Feature: Add Elasticsearch connection

    Feature: Add Elasticsearch connection

    Closes: --

    As discussed in Discord, I implemented initial support for Elasticsearch as a connection in Lowdefy. This PR only includes support for searching the index: While Elasticsearch supports full CRUD for documents, it is not fully clear what is out of scope for Lowdefy, how these endpoints will be implemented, or what kind of abstraction may be put in place.

    The connection uses the official, supported, documented, and well maintained Elasticsearch client by Elastic Co. It supports all options exposed by the client, which is quite a lot; while the schema contains virtually all available options, the documentation page focuses on the most used options and includes a link to the full reference. This is still lots of text, but I guess it helps that way. Let me know what you think!

    What are the changes and their implications?

    • A new connection has been added to the resolver. This should not have any implications on existing instances.
    • A new direct and two indirect dependencies have been added via @elastic/elasticsearch.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [x] Tests added
    • [x] Documentation added/updated
    opened by Radiergummi 7
  • Update antd from v4.4.2 to v4.17.0-alpha.7

    Update antd from v4.4.2 to v4.17.0-alpha.7

    Closes #518

    What are the changes and their implications?

    All antd update changes to antd-update branch before we merge to v4.

    Related PRs

    • [x] #835
    • [x] #836
    • [x] #849

    To Fix

    • [ ] Label feedback icon is slightly off-center vertically.

    Additional PRs:

    Blocks
    • [ ] Dropdown block
    • [ ] InputGroup block
    • [ ] Steps block
    • [ ] Cascader block
    • [ ] Tag block
    • [ ] Mentions block
    • [ ] Rate block
    • [ ] Upload block
    • [ ] Ribbon block
    • [ ] Slider block
    • [ ] Transfer block
    • [ ] TimePicker block
    • [ ] TreeSelect block
    • [ ] Table block
    • [ ] Calender block
    • [ ] Carousel block
    • [ ] Popover block
    • [ ] Empty block
    • [ ] Tag block
    • [ ] Tree block
    • [ ] PopConfirm block
    • [ ] BackTop block
    • [ ] Image block
    Other

    Antd Issues to track:

    • [x] https://github.com/ant-design/ant-design/issues/32369

    Checklist

    • [ ] Pull request is made to the "develop" branch
    • [x] Tests added
    • [x] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by Gervwyk 6
  • fix(blocks-markdown): Updated and fixed MarkdownWithCode Syntax Highlighter.

    fix(blocks-markdown): Updated and fixed MarkdownWithCode Syntax Highlighter.

    Closes https://github.com/TECHMRM/lowdefy/issues/25

    What are the changes and their implications?

    The MarkdownWithCode block has been updated to use [email protected] as a component to properly highlight code using [email protected].

    https://www.loom.com/share/beac05476da147369e6cda93c5e5541a

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by ghost 5
  • Connection Stripe V4

    Connection Stripe V4

    What are the changes and their implications?

    Fixed plugin structure to work with version 4.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [ ] Edits from maintainers are allowed
    opened by correiarmjoao 5
  • Connection Sendgrid V4

    Connection Sendgrid V4

    What are the changes and their implications?

    Fixed plugin structure to work with version 4.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [ ] Edits from maintainers are allowed
    opened by correiarmjoao 5
  • fix(docs): Changed feedback anchors to boxes

    fix(docs): Changed feedback anchors to boxes

    What are the changes and their implications?

    This PR changes the feedback form anchors to boxes since the anchors are not currently working properly.

    Checklist

    • [x] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [x] Documentation added/updated
    • [x] Code has been formatted with Prettier
    • [x] Edits from maintainers are allowed
    opened by Yianni99 1
  • Update packages

    Update packages

    Closes #ISSUE_NUMBER

    What are the changes and their implications?

    This PR updates all dependencies that can be updated without breaking changes.

    Checklist

    • [ ] Pull request is made to the "develop" branch
    • [ ] Tests added
    • [ ] Documentation added/updated
    • [ ] Code has been formatted with Prettier
    • [ ] Edits from maintainers are allowed
    opened by SamTolmay 1
  • โœ– Error: connect ETIMEDOUT 104.21.95.6:443

    โœ– Error: connect ETIMEDOUT 104.21.95.6:443

    npx lowdefy@latest dev

    18:20:28 โˆ™ Running 'lowdefy init'. 18:20:28 โˆ™ Initializing Lowdefy project 18:20:28 โˆ™ Created 'lowdefy.yaml'. 18:20:28 โˆ™ Created '.gitignore'. 18:20:29 โœ” Project initialized. 18:20:31 โˆ™ Running 'lowdefy dev'. Lowdefy app version 3.23.3. 18:20:31 โˆ™ Cleaning block meta cache at "~/tmp/.lowdefy/.cache/meta". 18:20:36 โˆ™ Fetched @lowdefy/[email protected] to cache. 18:20:36 โˆ™ Building configuration. 18:20:38 โˆ™ Fetched @lowdefy/[email protected] to cache. 18:21:53 โœ– Error: connect ETIMEDOUT 104.21.95.6:443 18:21:53 โˆ™ Starting Lowdefy development server. 18:21:53 โ„น Development server listening on port 3000

    timeout , how to fix it?

    Bug 
    opened by youhebuke52011 0
  • Google API error - [400] Invalid values[3][0]: struct_value { fields { key:

    Google API error - [400] Invalid values[3][0]: struct_value { fields { key: "_state" value {string_value: "ticket_title"}}

    Describe the bug

    Using lowdefy version 4.0.0-alpha.37 and following the tutorial included in the documentation, after completing Step 5.20 I get the following error after press the Submit button:

    Google API error - [400] Invalid values[3][0]: struct_value { fields { key: "_state" value {string_value: "ticket_title"}}
    

    and the following log is displayed on the server console:

    20:13:43 โˆ™ {
    20:13:43 โˆ™   route: 'request',
    20:13:43 โˆ™   params: {
    20:13:43 โˆ™     blockId: undefined,
    20:13:43 โˆ™     pageId: 'new-ticket',
    20:13:43 โˆ™     payload: {},
    20:13:43 โˆ™     requestId: 'save_data'
    20:13:43 โˆ™   }
    20:13:43 โˆ™ } Started request
    20:13:43 โˆ™ { authorized: true } Authorize Request
    20:13:45 โˆ™ {
    20:13:45 โˆ™   params: { id: 'save_data', type: 'GoogleSheetAppendOne' },
    20:13:45 โˆ™   err: RequestError: Google API error - [400] Invalid values[3][0]: struct_value {
    20:13:45 โˆ™     fields {
    20:13:45 โˆ™       key: "_state"
    20:13:45 โˆ™       value {
    20:13:45 โˆ™         string_value: "ticket_title"
    20:13:45 โˆ™       }
    20:13:45 โˆ™     }
    20:13:45 โˆ™   }
    20:13:45 โˆ™   
    20:13:45 โˆ™       at callRequestResolver (file:///home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/@[email protected]/node_modules/@lowdefy/api/dist/routes/request/callRequestResolver.js:28:21)
    20:13:45 โˆ™       at processTicksAndRejections (node:internal/process/task_queues:96:5)
    20:13:45 โˆ™       at async callRequest (file:///home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/@[email protected]/node_modules/@lowdefy/api/dist/routes/request/callRequest.js:79:22)
    20:13:45 โˆ™       at async handler (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/.next/server/pages/api/request/[pageId]/[requestId].js:223:26)
    20:13:45 โˆ™       at async Object.apiResolver (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/api-utils/node.js:366:9)
    20:13:45 โˆ™       at async NextNodeServer.runApi (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/next-server.js:481:9)
    20:13:45 โˆ™       at async Object.fn (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/next-server.js:735:37)
    20:13:45 โˆ™       at async Router.execute (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/router.js:247:36)
    20:13:45 โˆ™       at async NextNodeServer.run (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/base-server.js:347:29)
    20:13:45 โˆ™       at async NextNodeServer.handleRequest (/home/cverdes/Documents/dev/lowdefy-alpha/.lowdefy/dev/node_modules/.pnpm/[email protected]_biqbaboplfbrettd7655fr4n2y/node_modules/next/dist/server/base-server.js:285:20)
    20:13:45 โˆ™ } Google API error - [400] Invalid values[3][0]: struct_value {
    20:13:45 โˆ™   fields {
    20:13:45 โˆ™     key: "_state"
    20:13:45 โˆ™     value {
    20:13:45 โˆ™       string_value: "ticket_title"
    20:13:45 โˆ™     }
    20:13:45 โˆ™   }
    20:13:45 โˆ™ }
    

    It's only happens with version 4.0.0-alpha.37. With version 3.23.3 it works as expected and a new row is added in the Google Sheet.

    To Reproduce

    1. Create a folder
    2. Change directory to the new folder
    3. Execute npx lowdefy@alpha init
    4. Extract the files from the attached zip file into the new folder
    5. Execute npx lowdefy@alpha dev
    6. Complete the form with some data
    7. Press the Submit button

    Screenshots

    Error with version 4.0.0-alpha.37: Screenshot from 2022-12-14 20-14-01

    Row added with the same code but with the version 3.23.3: image

    Lowdefy Version

    Version 4.0.0-alpha.37

    lowdefy-files.zip

    Bug 
    opened by cverdes 1
  • Fix _object.defineProperty and  _yaml.stringify example typo

    Fix _object.defineProperty and _yaml.stringify example typo

    Discussed in https://github.com/lowdefy/lowdefy/discussions/1337

    Originally posted by 13316090972 August 20, 2022 There is an error in _object demos:

    _object.defineProperty:
      - firstName: Rachel
        series: Friends
      - lastName
      - descriptor:
          value: Green
    

    should be

    _object.defineProperty:
      on: firstName: Rachel
          series: Friends
      key: lastName
      descriptor:
          value: Green
    

    Similar errors appear in _yaml.stringify.

    Bug 
    opened by Gervwyk 0
Releases(v4.0.0-alpha.37)
  • v4.0.0-alpha.37(Dec 7, 2022)

    What's Changed

    • Release v4.0.0-alpha.36 by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1399
    • Fix Radio Selector not working for non-label/value fields. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1407
    • Update develop from main by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1413
    • feat(build): Add operators-moment to generateDefaultTypes by @JohannMoller in https://github.com/lowdefy/lowdefy/pull/1408
    • feat(blocks-antd): Add parser property to NumberInput. by @JohannMoller in https://github.com/lowdefy/lowdefy/pull/1414
    • fix(blocks-qr): Don't call start and stop if scanner is not running. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1403
    • DateTimeSelector to use onSelect for better UX. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1416
    • fix(blocks-antd): Import tooltip styles on Paragraph and Title for copy. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1415

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.36...v4.0.0-alpha.37

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.36(Oct 14, 2022)

  • v4.0.0-alpha.35(Oct 5, 2022)

  • v4.0.0-alpha.34(Sep 30, 2022)

    4.0.0-alpha.34 (2022-09-30)

    Bug Fixes

    • blocks-aggrid: Add valueType to input blocks. (89a8d55)
    • blocks-antd: Breadcrumb should not render defaultTitle as label. (a8762f0)
    • blocks-antd: Fix breadcrumb icon size bug. (c3b022f)
    • build: Fix dynamic import of _ref resolvers and transformers. (aaa6f55)
    • docs: Add format operator change to migration guide. (deee945)

    Features

    • api: Pass blockId, requestId, pageId and parsed payload to requests. (edc25ef)
    • connection-mongodb: Add changeLog to connection and requests. (8e3a0b9)
    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.33(Sep 22, 2022)

  • v4.0.0-alpha.32(Sep 22, 2022)

    What's Changed

    • fix(buiid): Add authPages to lowdefy schema. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1381
    • feat(docs): Add working example to Connections and Requests concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1379

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.31...v4.0.0-alpha.32

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.31(Sep 21, 2022)

    What's Changed

    • Update References and Templates concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1317
    • fix: Fix server pnpm installs. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1373
    • Map auth.authPages to nextAuthConfig.pages. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1376
    • Fix docs build. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1377

    Breaking Change

    • Ref operator changes, rename _var.name to _var.key. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1375

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.30...v4.0.0-alpha.31

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.30(Sep 17, 2022)

  • v4.0.0-alpha.29(Sep 13, 2022)

    What's Changed

    • Move to pnpm by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1366
    • feat: Update the V4 migration guide. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1364

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.28...v4.0.0-alpha.29

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.28(Sep 12, 2022)

    What's Changed

    • fix(blocks-antd): Fix issues in PageHeaderMenu and PageSiderMenu. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1367

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.27...v4.0.0-alpha.28

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.27(Sep 8, 2022)

    What's Changed

    • fix(blocks-aggrid): Import all input types. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1356
    • feat(blocks-qr): Add QR Scanner block. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1357
    • feat(actions-core): Add GeolocationCurrentPosition action. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1358
    • fix(docs): Update Connections and Requests concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1318
    • feat(plugins): Add init pdf-make, csv, and auth0 plugins. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1360

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.26...v4.0.0-alpha.27

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.26(Aug 25, 2022)

    What's Changed

    • Version 4.0.0-alpha.25 by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1345
    • feat(blocks-antd): Fix autocomplete bugs. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1347
    • fix: Log server install output at debug level. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1348
    • Update from main. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1346
    • fix(server-dev): Fix server dev file watchers. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1349
    • Fix label validation style render bug. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1350
    • docs: Update AxiosHttp.yaml by @vicam001 in https://github.com/lowdefy/lowdefy/pull/1353

    New Contributors

    • @vicam001 made their first contribution in https://github.com/lowdefy/lowdefy/pull/1353

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.25...v4.0.0-alpha.26

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.25(Aug 23, 2022)

    What's Changed

    • Add nunjucks date filter example. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1321
    • fix: Fix dev server auth api route. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1335
    • Update Events and Actions concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1320
    • Update Secrets concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1319
    • Update Menus concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1316
    • feat(cli): Throw if Lowdefy CLI is run with node < v14. by @JohannMoller in https://github.com/lowdefy/lowdefy/pull/1342
    • Cli Output by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1304
    • v4.0.0-alpha.24 by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1343
    • Update from main. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1344

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.24...v4.0.0-alpha.25

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.24(Aug 19, 2022)

    What's Changed

    • chore: Release v4.0.0-alpha.23 by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1325
    • fix(docs): Fix MongoDB page. by @HannWil in https://github.com/lowdefy/lowdefy/pull/1323
    • Update Blocks concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1329
    • Fix Radio Selector bug. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1330
    • fix(blocks-antd): Center Label when inline. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1327
    • Update Lowdefy App Schema concept page. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1314
    • fix: Fix next-auth getServerSession. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1331
    • Update next auth by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1332
    • fix(blocks-google-maps): Fix map jumping when clicking markers. by @StephanieJKS in https://github.com/lowdefy/lowdefy/pull/1333
    • Update develop from main by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1334

    New Contributors

    • @HannWil made their first contribution in https://github.com/lowdefy/lowdefy/pull/1323

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.23...v4.0.0-alpha.24

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.23(Aug 3, 2022)

    4.0.0-alpha.23 (2022-08-03)

    Bug Fixes

    • Add additional operator tests. (ddf8e51)
    • Add buildAuthPlugin tests. (df77f5d)
    • blocks-antd: Remove minHight on Label. (0999baa)
    • build: Add default for catch when try is defined and catch is not. (b1159e1)
    • docs: Add catch to Selector and MultipleSelector block pages. (9777175)
    • docs: correct filePath for ControlledList (c3a2cce)
    • docs: correct link to _secret operator (7124669)
    • docs: Docs V4 compatibilty fixes. (520dce1)
    • docs: Fix typo media to menu. (bccc978)
    • docs: Remove catch from MultipleSelector and Selector block pages. (adf6932)
    • docs: Remove outdated pages and add todos. (ff2c02b)
    • docs: Rename and remove actions pages. (0da95f3)
    • Fix _intl.relativeTimeFormat operator and add tests. (627b970)
    • Fix addUserFieldsToSession when using auth adapter. (850ee69)
    • Fix handling of null values in _array and _object operators. (1333f43)
    • operators-js: Fix intl operator tests. (841bbe6)
    • operators-moment: Change tests to run on UTC timezone. (f8db062)
    • Revert image url (714ce8c)

    Features

    • Add _intl operator. (fbf4b14)
    • Add _object.entries and _object.fromEntries operator methods. (499b726)
    • Add Next-Auth MongoDB adapter. (bdffb86)
    • Add support for auth adapters in build and servers. (5ae6e2b)
    • Add support for Next-Auth adapters. (337dbf4)
    • docs: Add examples to Lowdefy App Schema concept page. (f27f7dd)
    • docs: Add examples to References and Templates concept page. (cbe8690)
    • docs: Add Menu concept page. (5dfc51e)
    • docs: Add payload to Connections and Requests concept page. (4f9bff6)
    • docs: Add References and Templates concept page. (874bc37)
    • docs: Add roles example to Menus concept page. (54c13df)
    • docs: Change pages example on Lowdefy App Schema concept page. (1d17867)
    • docs: Format changes to Blocks concept page. (4713be6)
    • docs: General improvements to Events and Actions concept page. (182ffc2)
    • docs: General improvements to the Secrets concept page. (1121edb)
    • docs: Small changes in Blocks concept page. (588e4aa)
    • docs: Small changes to Connections and Requests concept page. (7c13734)
    • docs: Small format changes to Lowdefy App Schema concept page. (8bf7f78)
    • docs: Update blocks concept page. (3e6a9b2)
    • docs: Update Connections and Requests concept page. (879891e)
    • docs: Update Lowdefy App Schema concept page. (7cd587e)
    • Implement appendHead and appendBody in v4. (ba7ef7d), closes #1047
    • Implement appendHead and appendBody. (d9ae2ee)
    • operators-moment: Add moment operators. (bf82067)
    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.22(Jul 12, 2022)

    What's Changed

    • Fix aggrid typo. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1277

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.21...v4.0.0-alpha.22

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.21(Jul 11, 2022)

    What's Changed

    • fix(blocks-aggrid): Fix typo in processColDefs. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1273
    • Fix url query to read from window.location.search instead of duplicating to lowdefy object. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1274

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.20...v4.0.0-alpha.21

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.20(Jul 9, 2022)

    What's Changed

    • fix(blocks-aggrid): Rec fix cellRenderer. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1267
    • fix(deps): Update moment by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1268
    • fix(deps): update dependency next-auth to v4.9.0 [security] by @renovate in https://github.com/lowdefy/lowdefy/pull/1264

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.19...v4.0.0-alpha.20

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.19(Jul 6, 2022)

    What's Changed

    • fix: Allow cellRenderer in Aggrid to render html. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1256
    • fix: Fix axios failing tests. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1259
    • feat: Extra Auth config to enable for JWT auth by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1260
    • fix: Fix menu selected keys to pageId by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1257
    • fix: _ref error message. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1258

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.18...v4.0.0-alpha.19

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.18(Jun 27, 2022)

    What's Changed

    • Apply area and layout default in layout package. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1253

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.17...v4.0.0-alpha.18

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.17(Jun 27, 2022)

    4.0.0-alpha.17 (2022-06-24)

    Bug Fixes

    • blocks-google-maps: Fix fitBounds. (a4748ba)
    • blocks-google-maps: Fix load script libraries. (c9376f0)
    • blocks-google-maps: Fix onLoad event. (2c1de9a)
    • blocks-google-maps: Fixes to onLoad. (1dd08e4)
    • build: Add default dependancies. (7d0e03a)
    • build: Add new plugins as dev dependencies. (145e598)
    • build: Evaluate build operators in lowdefy.yaml (49ed3e1)
    • build: Evaluate build operators in lowdefy.yaml root. (c340b52)
    • client: Fix layout on skeleton containers. (fb38d00)
    • client: Skeleton to get parent blocks properties and styles. (0022fc0)
    • deps: Update dependency next-auth to v4.5.0. (49dd43a)
    • dev-server: Add google maps and aggrid as default types. (b3fa3a2)
    • Fix nunjucks operator shorthand en operators runtime definition. (e2c3291)
    • Fix package.json fixes. (17f54ac)
    • Fix userFields implementation. (c566541)
    • Fix userFields in production server. (614d7c9)
    • Remove userFields debug logs. (8fad19f)
    • server-dev: Add max count in waitForRestartedServer ping. (d7d8a0b)

    Features

    • actions-core: Add Fetch action. (4c47ba6)
    • Add callbackUrl and redirect as logout action params. (9c13bd6)
    • Add url as a login and logout callbackUrl parameter. (78d099a)
    • Add userFields feature to map auth provider data to usernobject. (0ab688b)
    • blocks-aggrid: Add aggrid as a default block. (3133fee)
    • blocks-googl-maps: Update docs. (fb950b6)
    • blocks-google-maps: Add google maps as a default block. (b0daaec)
    • blocks-google-maps: Add onLoad to maps. (e9a75df)
    • blocks-google-maps: Switch to @react-google-maps/api. (3edbd9a)
    • blocks-google-maps: Update Google Maps block docs. (2657a3c)
    • build: Add aggrid and maps as default block types. (fbc3818)
    • Move browser globals to lowdefy._internal.globals. (94c4016)
    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.16(Jun 20, 2022)

  • v4.0.0-alpha.15(Jun 19, 2022)

  • v4.0.0-alpha.14(Jun 19, 2022)

  • v4.0.0-alpha.13(Jun 16, 2022)

    4.0.0-alpha.13 (2022-06-16)

    Bug Fixes

    • actions-core: Fix actions core tests. (8647f91)
    • actions: Convert tests to use new testContext. (1a6f8df)
    • Add lerna-debug.log to gitignore. (e521be2)
    • blocks-echarts: Do not break if dataset.source is null. (30d3d7e)
    • Build createContext should not be async, create separate file. (67c03ec)
    • build: defaultTypesMap to write a js file to dist. (331284e)
    • build: Fix build tests. (9ea612b)
    • build: Fix buildAuth tests. (0882416)
    • build: Fix buildEvents tests. (0dcb927)
    • build: remove unneccesary async await in build. (6b974e6)
    • build: Restore buildRefs tests after jest update fixes es modules. (a684273)
    • build: Throw during build if events are not arrays. (c0c3971)
    • cli: Check env for configDirectory. (f8964ca)
    • engine: Fix createSetGlobal. (542ed98)
    • engine: Fix engine tests. (92182a2)
    • engine: RootBlocks.map to use blockId. (d31064f)
    • engine: Set request to null and update before calling request. (bb2b57b)
    • engine: testContext to build config and use getContext. (4539d6f)
    • engine: Update benchmark test to pass. (529f65e)
    • engine: Update createResetValidation test (177b66f)
    • engine: Update test to use built config. (f4c0f76)
    • Fix auth errors if auth is not configured. (8a386a8)
    • Fix license typo. (972acbb)
    • operators-js: Fix _location and _media tests. (f47bede)
    • server-dev: Load .env using dotenv. (85d7827)
    • Update all packages to use @lowdefy/jest-yaml-transform. (7bdf0a4)
    • Update tests to run on node and jsdom. (be2180a)
    • Use createRequire to import json files. (a9c7ec4)

    Features

    • Add openid connect standard claims to user object. (7f099e1)
    • Add version property to Lowdefy schema. (04ff15f)
    • cli: Add โ€”no-open option to cli dev command. (bc5b12f)
    • cli: Cli to load .env for build and start commands. (ac34fe8)
    • docs: Init v4 migration notes. (674dc03)
    • engine: ๐Ÿ„โ€โ™‚๏ธEngine tests are passing. (d737e1c)
    • engine: Add payload and blockId to context.requests[requestId]. (e29d88b)
    • Export buildTestPage, add tests. (bc9f16c)
    • Package updates. (e024181)
    • Package Updates. (0f9d8cd)
    • React 18 update. (55268e7)
    • Set login providerId if only one provider is configured. (8bc34a1)
    • utils: Add jest-yaml-transform package. (dd9dbe4)
    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.12(May 23, 2022)

    What's Changed

    • feat: Install most fill and outline antd icons for dev server. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1205
    • fix(server-dev): Fix react hooks used incorrectly. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1206
    • fix(client): On mount async method should always be called. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1207
    • Fix location by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1208

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.11...v4.0.0-alpha.12

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.11(May 20, 2022)

    What's Changed

    • fix(server-dev): Fix dev server not running next build. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1192
    • Next auth by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1189
    • Fix reading json files by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1196
    • feat: Import all types exported by plugins in dev server. by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1199
    • Turborepo by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1197
    • fix(cli): Do not copy node_modules in plugin folders. by @Gervwyk in https://github.com/lowdefy/lowdefy/pull/1200
    • Windows compatibility fixes by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1201
    • Package updates by @SamTolmay in https://github.com/lowdefy/lowdefy/pull/1202

    Full Changelog: https://github.com/lowdefy/lowdefy/compare/v4.0.0-alpha.10...v4.0.0-alpha.11

    Source code(tar.gz)
    Source code(zip)
  • v4.0.0-alpha.9(May 6, 2022)

  • v4.0.0-alpha.10(May 6, 2022)

  • v3.23.3(Apr 20, 2022)

    3.23.3 (2022-04-20)

    Changes

    Blocks

    • Fix icons on ConfirmModal buttons. Closes #1160.

    Connections

    • Fix AxiosHttp to allow arrays in the data property. Closes #1158.

    Commits

    Bug Fixes

    • Fix axios docs after schema fix. (2e3c632)
    • Update docs snapshot test (e8445e8)
    • blocksAntd: Pass icons to confirm modal, closes #1160 (2256b2b)
    • graphql: Update AxiosHttp schema to allow for data arrays (ff4d168), closes #1158
    Source code(tar.gz)
    Source code(zip)
Owner
Lowdefy
Create internal tools with YAML
Lowdefy
Plugin to backup & restore your strapi installation (database + uploads) from admin panel.

Strapi Backup & Restore plugin Add backup and restore features directly inside your strapi admin panel. Supported databases: mysql sqlite postgre mong

Hugues BUREAU 41 Dec 19, 2022
A framework for building native apps with React.

React Native Learn once, write anywhere: Build mobile apps with React. Getting Started ยท Learn the Basics ยท Showcase ยท Contribute ยท Community ยท Suppor

Facebook 106.8k Jan 3, 2023
HTML Framework that allows you not to write JavaScript code.

EHTML (or Extended HTML) can be described as a set of custom elements that you can put on HTML page for different purposes and use cases. The main ide

Guseyn Ismayylov 171 Dec 29, 2022
๐ŸŒŸ DataFormsJS ๐ŸŒŸ A minimal JavaScript Framework and standalone React and Web Components for rapid development of high quality websites and single page applications.

?? Welcome to DataFormsJS! Thanks for visiting! ?? ?? ?? ?? ?? ?? ไธญๆ–‡ (็ฎ€ไฝ“) ๆฌข่ฟŽๆฅๅˆฐ DataFormsJS Espaรฑol Bienvenido a DataFormsJS Portuguรชs (do Brasil) Bem

DataFormsJS 156 Dec 8, 2022
AngularJS - HTML enhanced for web apps!

AngularJS AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade/Pug and

Angular 59.3k Jan 4, 2023
Cybernetically enhanced web apps

What is Svelte? Svelte is a new way to build web applications. It's a compiler that takes your declarative components and converts them into efficient

Svelte 64.3k Dec 28, 2022
๐Ÿ™‹โ€โ™€๏ธ 3kb library for tiny web apps

3kb library for tiny web apps. Sometimes, all you want to do is to try and do somethingโ€”No boilerplate, bundlers, or complex build processes. Lucia ai

Aiden Bai 699 Dec 27, 2022
The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web.

Bootstrap Sleek, intuitive, and powerful front-end framework for faster and easier web development. Explore Bootstrap docs ยป Report bug ยท Request feat

Bootstrap 161.1k Jan 4, 2023
Ember.js - A JavaScript framework for creating ambitious web applications

Ember.js is a JavaScript framework that greatly reduces the time, effort and resources needed to build any web application. It is focused on making yo

Ember.js 22.4k Jan 8, 2023
๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

Supporting Vue.js Vue.js is an MIT-licensed open source project with its ongoing development made possible entirely by the support of these awesome ba

vuejs 201.7k Jan 8, 2023
A no-dependency, intuitive web framework from scratch in Javascript

Poseidon ?? Intro Poseidon is, to use a nice description by Reef, an anti-framework. It's a a no-dependency, component-based Javascript framework for

Amir Bolous 45 Nov 14, 2022
An HTML5/CSS3 framework used at SAPO for fast and efficient website design and prototyping

Welcome to Ink Ink is an interface kit for quick development of web interfaces, simple to use and expand on. It uses a combination of HTML, CSS and Ja

SAPO 1.9k Dec 15, 2022
A framework for real-time applications and REST APIs with JavaScript and TypeScript

A framework for real-time applications and REST APIs with JavaScript and TypeScript Feathers is a lightweight web-framework for creating real-time app

Feathers 14.2k Dec 28, 2022
MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers

Derby The Derby MVC framework makes it easy to write realtime, collaborative applications that run in both Node.js and browsers. Derby includes a powe

DerbyJS 4.7k Dec 31, 2022
Supabase client initialization and encapsulation in fastify framework

fastify-supabase Supabase client initialization and encapsulation in fastify framework. Install Install the package with: npm i fastify-supabase --sav

null 19 Aug 2, 2022
Brail is a framework built on NextJS for developing email templates in React, and returning HTML that is compatible with major email clients.

Brail is a framework built on NextJS for developing email templates in React, and returning HTML that is compatible with major email clients. It aims to seperate the concerns of generating the emails and delivering them.

null 121 Jan 2, 2023
The worlds smallest fully-responsive css framework

FLUIDITY A fully responsive css framework that is impossibly small HTML is almost 100% responsive out of the box. This stylesheet patches the remainin

murmurs 1.1k Sep 24, 2022
One framework. Mobile & desktop.

Angular - One framework. Mobile & desktop. Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScr

Angular 85.7k Jan 4, 2023