Pārlūkot izejas kodu

feat: add package_desc.md as the long description for setuptools

trgiangdo 1 gadu atpakaļ
vecāks
revīzija
acfd2e8278

+ 76 - 0
package_desc.md

@@ -0,0 +1,76 @@
+# Taipy
+
+## 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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
+
+Taipy is an open-source Python library for easy, end-to-end application development for data
+scientists and machine learning engineers, featuring what-if analyses, smart pipeline execution,
+built-in scheduling, and deployment tools.
+
+- Enables building production-ready web applications.
+- No need to learn new languages or full-stack frameworks.
+- Concentrate on Data and AI algorithms without development and deployment complexities.
+
+- Website: https://www.taipy.io
+- Documentation: https://docs.taipy.io/en/latest/
+- Demos & Examples: https://docs.taipy.io/en/latest/gallery/
+- Source code: https://github.com/Avaiga/taipy/
+- Contributing: https://docs.taipy.io/en/latest/contributing/contributing/
+- Bug reports: https://github.com/Avaiga/taipy/issues
+- Discord support: https://discord.com/invite/SJyz2VJGxV
+
+## ✨ Features
+
+- **Python-Based UI Framework:** Taipy is designed for Python users, particularly those working in AI and data science. It allows them to create full stack applications without needing to learn additional skills like HTML, CSS, or JavaScript.
+
+- **Pre-Built Components for Data Pipelines:** Taipy includes pre-built components that allow users to interact with data pipelines, including visualization and management tools.
+
+- **Scenario and Data Management Features:** Taipy offers features for managing different business scenarios and data, which can be useful for applications like demand forecasting or production planning.
+
+- **Version Management and Pipeline Orchestration:** It includes tools for managing application versions, pipeline versions, and data versions, which are beneficial for multi-user environments.
+
+## Installation
+
+To install Taipy stable release run:
+```bash
+pip install taipy
+```
+
+To install Taipy on a Conda Environment or from source, please refer to the [Installation Guide](https://docs.taipy.io/en/latest/installation/).<br />
+To get started with Taipy, please refer to the [Getting Started Guide](https://docs.taipy.io/en/latest/getting_started/).
+
+## Contributing
+
+Writing code isn’t the only way to contribute to Taipy. You can also:
+- help us stay on top of new and old issues
+- develop tutorials, presentations, and other educational materials
+- maintain and improve [our website](https://www.taipy.io) and [documentation](https://docs.taipy.io/en/latest/)
+- review pull requests
+- help with outreach and onboard new contributors
+
+For more information about the ways you can contribute to Taipy, visit our
+[Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+If you’re unsure where to start or how your skills fit in, reach out on Discord. You can also ask on
+GitHub, by opening a new issue or leaving a comment on a relevant issue that is already open.
+
+If you are new to contributing to open source projects, [this guide](https://opensource.guide/how-to-contribute/)
+helps explain why, what, and how to successfully get involved.
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.

+ 76 - 0
taipy/config/package_desc.md

@@ -0,0 +1,76 @@
+# Taipy Config
+
+## 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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 Config
+
+Taipy is a Python library for creating Business Applications. More information on our
+[website](https://www.taipy.io). Taipy is split into multiple repositories including *taipy-config*
+to let users install the minimum they need.
+
+Taipy Config is a package designed to help users configure their Taipy application.
+
+## Installation
+
+The latest stable version of *taipy-config* is available through *pip*:
+```bash
+pip install taipy-config
+```
+
+You can install the development version of *taipy-config* with *pip* and *git* via the taipy repository:
+```bash
+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-config* package.
+
+If you need the source code for *taipy-config* 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:
+
+```bash
+git clone https://github.com/Avaiga/taipy.git
+```
+
+This creates the 'taipy' directory holding all the package's source code, and the 'taipy-config'
+source code is in the 'taipy/config' directory.
+
+## Running the tests
+
+To run the tests on the package, you need to install the required development packages.
+We recommend using [Pipenv](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+Then you can run *taipy-config* tests with the following command:
+
+```bash
+pipenv run pytest tests/config
+```
+
+## Contributing
+
+Want to help build *Taipy Config*? Check out our
+ [Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.

+ 77 - 0
taipy/core/package_desc.md

@@ -0,0 +1,77 @@
+# Taipy Core
+
+## 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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 Core
+
+Taipy is a Python library for creating Business Applications. More information on our
+[website](https://www.taipy.io). Taipy is split into multiple repositories including *taipy-core*
+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.
+
+## Installation
+
+The latest stable version of *taipy-core* is available through *pip*:
+```bash
+pip install taipy-core
+```
+
+You can install the development version of *taipy-core* with *pip* and *git* via the taipy repository:
+```bash
+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-core* package.
+
+If you need the source code for *taipy-core* 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:
+
+```bash
+git clone https://github.com/Avaiga/taipy.git
+```
+
+This creates the 'taipy' directory holding all the package's source code, and the 'taipy-core'
+source code is in the 'taipy/core' directory.
+
+## Running the tests
+
+To run the tests on the package, you need to install the required development packages.
+We recommend using [Pipenv](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+Then you can run *taipy-core* tests with the following command:
+
+```bash
+pipenv run pytest tests/core
+```
+
+## Contributing
+
+Want to help build *Taipy Core*? Check out our
+ [Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.

+ 139 - 0
taipy/gui/package_desc.md

@@ -0,0 +1,139 @@
+# Taipy GUI
+
+## 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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 GUI
+
+Taipy is a Python library for creating Business Applications. More information on our
+[website](https://www.taipy.io). Taipy is split into multiple repositories including *taipy-gui* to let users
+install the minimum they need.
+
+Taipy GUI provides Python classes that make it easy to create powerful web apps in minutes.
+
+## Installation
+
+There are different ways to install Taipy GUI, depending on how
+you plan to use it:
+
+- [Installing the latest release](#installing-the-latest-release)
+- [Installing the development version](#installing-the-development-version)
+  - [1 - Clone the repository](#1---clone-the-repository)
+  - [2 - Install Node.js](#2---install-nodejs)
+  - [3 - Build the JavaScript bundle](#3---build-the-javascript-bundle)
+  - [4 - Install the package as editable](#4---install-the-package-as-editable)
+- [Debugging the JavaScript bundle](#debugging-the-javascript-bundle)
+- [Running the tests](#running-the-tests)
+
+Taipy GUI needs your system to have **Python 3.8** or above installed.
+
+### Installing the latest release
+
+The easiest way to install Taipy GUI is using pip
+
+Run the command:
+```bash
+pip install taipy-gui
+```
+
+### Installing the development version
+
+The development version of Taipy GUI is updated daily with changes from the
+Taipy R&D and external contributors that we praise for their input.
+
+You should also install this version if you want to contribute to the development of Taipy GUI. Here are the steps to follow:
+
+#### 1 - Clone the Taipy repository
+
+Clone the Taipy repository using the following command:
+```bash
+git clone https://github.com/Avaiga/taipy.git
+```
+
+This creates the 'taipy' directory holding all the package's source code, and the 'taipy-gui'
+source code is in the 'taipy/gui' directory.
+
+#### 2 - Install Node.js
+
+Taipy GUI has some code dealing with the client side of the web applications.
+This code is written in <a href="https://www.typescriptlang.org/" target="_blank">TypeScript</a>, relies on <a href="https://reactjs.org/" target="_blank">React</a> components, and is packaged into a JavaScript bundle
+that is sent to browsers when they connect to all Taipy GUI applications.
+
+This bundle needs to be built before being usable by Taipy GUI.
+
+First you need to install <a href="https://nodejs.org/" target="_blank">Node.js</a> on your system.
+
+**Select the "Recommended For Most Users" version, and follow the instructions for your system.**
+
+**Select "Automatically install the necessary tools" when asked.**
+
+#### 3 - Build the JavaScript bundle
+
+Open a new terminal and run the following commands:
+
+- Install the DOM dependencies
+```bash
+cd gui
+cd dom
+npm i
+```
+- Install the web app dependencies
+```bash
+cd ..
+npm i --omit=optional
+```
+- Build the web app
+```bash
+npm run build
+```
+
+After a few minutes, this creates the directory `taipy/gui/webapp` in the root directory of the repository
+where the front-end code for Taipy GUI is split into a set of JavaScript bundles.
+
+#### 4 - Install the package as editable
+
+In a terminal, **at the root of the repository**, run:
+```bash
+pip install -e . --user
+```
+
+This should install the dev version of Taipy GUI as editable. You are now ready to use it.
+
+## Running the tests
+
+To run the tests on the package, you need to install the required development packages.
+We recommend using [Pipenv](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+Then you can run *taipy-gui* tests with the following command:
+
+```bash
+pipenv run pytest tests/gui
+```
+
+## Contributing
+
+Want to help build *Taipy GUI*? Check out our
+ [Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.

+ 173 - 0
taipy/rest/package_desc.md

@@ -0,0 +1,173 @@
+# 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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](https://www.taipy.io). Taipy is split into multiple repositories 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*:
+```bash
+pip install taipy-rest
+```
+
+### Development version
+
+You can install the development version of *taipy-rest* with *pip* and *git* via the taipy repository:
+```bash
+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:
+
+```bash
+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](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+To run the application you can either run locally with:
+```bash
+flask run
+```
+
+or it can be run inside Docker with:
+```bash
+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
+
+```bash
+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
+
+```bash
+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:
+
+```bash
+heroku container:login
+```
+
+Create a heroku app
+```bash
+heroku create
+```
+
+Build the image and push to Container Registry:
+```bash
+heroku container:push web
+```
+
+Then release the image:
+```bash
+heroku container:release web
+```
+
+You can now access *taipy-rest* on the URL that was returned on the `heroku create` command.
+
+## Running the tests
+
+To run the tests on the package, you need to install the required development packages.
+We recommend using [Pipenv](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+Then you can run *taipy-rest* tests with the following command:
+
+```bash
+pipenv run pytest tests/rest
+```
+
+## Contributing
+
+Want to help build *Taipy REST*? Check out our
+ [Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.

+ 90 - 0
taipy/templates/package_desc.md

@@ -0,0 +1,90 @@
+# Taipy Templates
+
+## 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](https://www.apache.org/licenses/LICENSE-2.0.txt)
+
+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 templates
+
+Taipy is a Python library for creating Business Applications. More information on our
+[website](https://www.taipy.io). Taipy is split into multiple repositories including *taipy-templates*
+to let users install the minimum they need.
+
+Taipy templates is a repository that contains templates and scaffoldings created and
+maintained by Taipy. It helps users getting started with a simple and ready-to-go application.
+
+To create a Taipy application using this template, first you need to install Taipy (> 2.2).
+Then from a terminal, run the following command.
+```bash
+taipy create
+```
+or
+```bash
+taipy create --template "default"
+```
+
+After providing necessary information, your new application is created in the current
+working directory.
+
+## Installation
+
+The latest stable version of *taipy-templates* is available through *pip*:
+```bash
+pip install taipy-templates
+```
+
+You can install the development version of *taipy-templates* with *pip* and *git* via the taipy repository:
+```bash
+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-templates* package.
+
+If you need the source code for *taipy-templates* 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:
+
+```bash
+git clone https://github.com/Avaiga/taipy.git
+```
+
+This creates the 'taipy' directory holding all the package's source code, and the 'taipy-templates'
+source code is in the 'taipy/templates' directory.
+
+## Running the tests
+
+To run the tests on the package, you need to install the required development packages.
+We recommend using [Pipenv](https://pipenv.pypa.io/en/latest/) to create a virtual environment
+and install the development packages.
+
+```bash
+pip install pipenv
+pipenv install --dev
+```
+
+Then you can run *taipy-templates* tests with the following command:
+
+```bash
+pipenv run pytest tests/templates
+```
+
+## Contributing
+
+Want to help build *taipy-templates*? Check out our
+[Contributing Guide](https://docs.taipy.io/en/latest/contributing/contributing/).
+
+## Code of conduct
+
+Taipy is an open source project developed by the Taipy development team and a community of
+[contributors](https://docs.taipy.io/en/latest/contributing/contributors/). Please check out the
+[Taipy Code of Conduct](https://docs.taipy.io/en/latest/contributing/code_of_conduct/) for guidance
+on how to interact with others in a way that makes our community thrive.