lowdefy/packages/docs/introduction.yaml

101 lines
5.3 KiB
YAML

# Copyright 2020-2021 Lowdefy, Inc
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
_ref:
path: templates/general.yaml.njk
vars:
pageId: introduction
pageTitle: Introduction
filePath: introduction.yaml
prefetchPages:
- tutorial-start
content:
- id: body_intro
type: Markdown
properties:
content: |
Lowdefy simplifies creating software that helps manage internal data - think web apps, admin panels, BI dashboards, CRUD and workflow apps. Within most companies the need exists to connect to a variety of data sources and execute actions on such data. This must be done without compromising data security while respecting complex data integrity rules.
Lowdefy aims to enable companies to better control and monitor business data, by simplifying the process of creating internal tools. Lowdefy makes these tools easy to build, change and maintain, making it easier to evolve your internal tools with your business.
## Quickstart
- _ref:
path: templates/cli_command.yaml.njk
vars:
id: quickstart
command: 'npx lowdefy@latest init && npx lowdefy@latest dev'
- id: body_features
type: Markdown
properties:
content: |
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.
### Create internal tools by only writing simple, readable YAML
Using Lowdefy means all the complicated parts of developing a web app for your internal tools are taken care of, allowing you to focus on the pure business logic. The Lowdefy config schema is easy to learn, understand and remember. In order to achieve this, we aim to be consistent in how things work so that you predict how an app will behave by simply reading the config.
Advantages of writing internal tools in YAML:
- 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 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.
> If you aren't a fan of YAML, you can also build your app using JSON files.
### Work with your data where it is stored
Lowdefy apps can connect to multiple data bases, APIs and apps. Day to day business requires people working with data which is stored in a variety of different data bases and applications.
Too often data is exported, duplicated and lost, creating additional risk. Lowdefy only runs your application config, and does not store any data, but rather connects to your data sources and APIs.
### Build future proof web applications on a open-source platform
Lowdefy is a open-source Apache-2 licensed project, free from vendor lock-in. Our business model is to build optional "nice-to-have" services best suited for Lowdefy applications, enriching the Lowdefy ecosystem.
Since Lowdefy apps are easy to manage in a git repository, we hope to see many community open-source Lowdefy apps in the future.
### Deploy your Lowdefy app as you like
Host your Lowdefy app in your own environment as a docker image or even on Netlify using serverless functions. Serving a Lowdefy app, requires a the Lowdefy graphQl server and hosting the Lowdefy React app and blocks.
The Lowdefy front-end makes use of Webpack module federation to serve blocks and assemble your Lowdefy app as a micro-front-end solution. Developing your own custom front-end React blocks makes Lowdefy apps truly expandable.
## Tutorial
The easiest way to get started with Lowdefy is to follow the tutorial. In this tutorial we will be building a simple support ticketing app to get you started.
- id: start_tutorial_button
type: Button
style:
marginTop: 40px
marginBottom: 80px
properties:
block: true
hideActionLoading: true
icon: RocketOutlined
size: large
title: Start the tutorial
type: primary
events:
onClick:
- id: link_forward
type: Link
params:
pageId: tutorial-start
- id: scroll_to_top
type: ScrollTo
params:
top: 0