Skip to main content

Library to expose taipy-core REST APIs.

Project description

Taipy REST

License

Copyright 2021-2024 Avaiga Private Limited

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.

What is Taipy REST

Taipy is a Python library for creating Business Applications. More information on our website. Taipy is split into multiple packages including taipy-core and taipy-rest to let users install the minimum they need.

Taipy Core mostly includes business-oriented features. It helps users create and manage business applications and improve analyses capability through time, conditions and hypothesis.

Taipy REST is a set of APIs built on top of the taipy-core library developed by Avaiga. This project is meant to be used as a complement for Taipy and its goal is to enable automation through rest APIs of processes built on Taipy.

Installation

The latest stable version of taipy-rest is available through pip:

pip install taipy-rest

Development version

You can install the development version of taipy-rest with pip and git via the taipy repository:

pip install git+https://git@github.com/Avaiga/taipy

This command installs the development version of taipy package in the Python environment with all its dependencies, including the taipy-rest package.

If you need the source code for taipy-rest on your system so you can see how things are done or maybe participate in the improvement of the packages, you can clone the GitHub repository:

git clone https://github.com/Avaiga/taipy.git

This creates the 'taipy' directory holding all the package's source code, and the 'taipy-rest' source code is in the 'taipy/rest' directory.

Configuration

Before running, we need to define some variables. Taipy REST APIs depend on pre-configuration of taipy config objects, i.e, is mandatory to define all configuration of DataNodes, Tasks, Sequences, etc. The file containing this configuration needs to be passed to the application at runtime. The following variable needs to be defined:

  • TAIPY_SETUP_FILE: the path to the file containing all of taipy object configuration

If using Docker, the folder containing the file needs to be mapped as a volume for it to be accessible to the application.

Running

To run taipy-rest, you need to install the required development packages. We recommend using Pipenv to create a virtual environment and install the development packages.

pip install pipenv
pipenv install --dev

To run the application you can either run locally with:

flask run

or it can be run inside Docker with:

docker-compose up

You can also run with a Gunicorn or wsgi server.

Running with Gunicorn

This project provide a simple wsgi entry point to run gunicorn or uwsgi for example.

For gunicorn you only need to run the following commands

pip install gunicorn

gunicorn myapi.wsgi:app

And that's it! Gunicorn is running on port 8000.

If you chose gunicorn as your wsgi server, the proper commands should be in your docker-compose file.

Running with uwsgi

Pretty much the same as gunicorn here

pip install uwsgi
uwsgi --http 127.0.0.1:5000 --module myapi.wsgi:app

And that's it! Uwsgi is running on port 5000.

If you chose uwsgi as your wsgi server, the proper commands should be in your docker-compose file.

Deploying on Heroku

Make sure you have a working Docker installation (e.g. docker ps) and that you’re logged in to Heroku (heroku login).

Log in to Container Registry:

heroku container:login

Create a heroku app

heroku create

Build the image and push to Container Registry:

heroku container:push web

Then release the image:

heroku container:release web

You can now access taipy-rest on the URL that was returned on the heroku create command.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

taipy_rest-4.1.1.tar.gz (23.6 kB view details)

Uploaded Source

File details

Details for the file taipy_rest-4.1.1.tar.gz.

File metadata

  • Download URL: taipy_rest-4.1.1.tar.gz
  • Upload date:
  • Size: 23.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for taipy_rest-4.1.1.tar.gz
Algorithm Hash digest
SHA256 ad49ea24db8fed6a257964d506123b3ddb43489a4c179244aa85ac15570f9c51
MD5 d5d372bbef2593b16915c972e3e0b38a
BLAKE2b-256 996cdcf700b7f8c840cd600986ed774c4f4ff02a178bb9ce80878436bbb609fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for taipy_rest-4.1.1.tar.gz:

Publisher: publish.yml on Avaiga/taipy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page