Metadata-Version: 2.1
Name: abstra
Version: 1.29.6
Summary: Abstra Lib
Home-page: https://github.com/abstra-app/abstra-lib
License: MIT
Platform: UNKNOWN
Requires-Python: >=3.8, <4
Description-Content-Type: text/markdown
Requires-Dist: colorama ==0.4.6
Requires-Dist: colour ==0.1.5
Requires-Dist: fire ==0.5.0
Requires-Dist: Flask ==2.2.2
Requires-Dist: Flask-Cors ==4.0.0
Requires-Dist: flask-sock ==0.6.0
Requires-Dist: flask-talisman ==1.1.0
Requires-Dist: jedi ==0.19.0
Requires-Dist: multipart ==0.2.4
Requires-Dist: progress ==1.6
Requires-Dist: pyjwt[crypto] ==2.8.0
Requires-Dist: requests ==2.31.0
Requires-Dist: simple-websocket ==0.10.1
Requires-Dist: simplejson ==3.19.1
Requires-Dist: validators ==0.20.0
Requires-Dist: Werkzeug ==2.2.3
Requires-Dist: setuptools
Requires-Dist: importlib-metadata
Requires-Dist: debugpy
Requires-Dist: python-dotenv ==1.0.0
Requires-Dist: unidecode ==1.3.7
Requires-Dist: pydantic

[![pypi](https://img.shields.io/pypi/v/abstra.svg)](https://pypi.python.org/pypi/abstra)
[![PyPI Downloads](https://img.shields.io/pypi/dm/abstra.svg)](https://pypi.org/project/abstra/)

# ✨ Abstra ✨

Abstra is a simple and powerful way to build business automation workflows.

It's a Python-powered backoffice engine with:

- drag'n drop workflow builder
- dynamic forms
- serveless endpoints
- script schedulers
- zero-config authentication
- one-click scalable deploy
- cloud managed database
- plug'n play api integrations
- automatic audit logging
- access control

and much more! ⚡️

## 🚦 Getting started

[![](./images/getting-started.png)](https://youtu.be/kkTRU8PS8cg)

This package is compatible with Python >= 3.8

To install, run the following:

```
pip install abstra
```

Run the CLI server in the directory where you'd like to create your Abstra project. This can be any folder:

```
abstra serve ./your-project-directory
```

## 🧩 Workflow builder for Python

Workflows is perfect for automating repetitive processes that require a mix of manual steps and integration between systems.

Visually assemble a process made up of Python-coded steps. All steps share an environment, variables and functions.

![](./images/workflows.png)

## 📝 Scriptable forms

Forms is the quickest way to build interactive user interfaces on the web. Use it to get user input during your Workflow's run, such a request approval or additional data.

Manipulate this input with Python and any desired lib before moving to the next step.

![](./images/forms.png)

## 🛟 Useful links

[Website](https://abstra.io) | [Docs](https://docs.abstra.io) | [Cloud](https://cloud.abstra.io) | [Privacy](./PRIVACY.md)


