-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Doc/#1209 - #1250 - Add documentation page for each application and page template #1263
base: develop
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would move the templates/
folder from docs/userman/ecosystem/
to docs/
. I propose to expose the templates at the top level next to the tutorials. On the contrary, the cli/
folder remains unchanged, under docs/userman/ecosystem/
folder. Does it make sense?
I would also like to have a templates/index.md
page that list all templates (for application and page).
What do you think?
Co-authored-by: Jean-Robin <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some suggestions are not real suggestions but just a proposal for some new sections and new titles.
Co-authored-by: Jean-Robin <[email protected]>
…n description and customize the application sections
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I updated the sdm.md
file with the new structure.
@jrobinAV Please review this page.
When it's ok, I will restructure the default.md
with similar structure.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mostly max line length
Co-authored-by: Jean-Robin <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could also add UI screenshots to make the doc appealing and to quickly explain the features available for an end-user.
…eginning of the doc page
I am getting 404 answers on the new |
- "Templates": | ||
- "Templates": tp_templates/index.md | ||
- "Application templates": | ||
- "Default application template": tp_templates/applications/default_app.md | ||
- "Scenario management template": tp_templates/applications/sdm_app.md | ||
- "Page templates": | ||
- "Default page template": tp_templates/pages/default_page.md | ||
- "Root page template": tp_templates/pages/root_page.md | ||
- "Data management page template": tp_templates/pages/data_management_page.md | ||
- "Scenario management page template": tp_templates/pages/sdm_page.md | ||
- "Job management page template": tp_templates/pages/job_management_page.md | ||
- "Login page template": tp_templates/pages/login_page.md | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would simplify the titles.
- "Templates": | |
- "Templates": tp_templates/index.md | |
- "Application templates": | |
- "Default application template": tp_templates/applications/default_app.md | |
- "Scenario management template": tp_templates/applications/sdm_app.md | |
- "Page templates": | |
- "Default page template": tp_templates/pages/default_page.md | |
- "Root page template": tp_templates/pages/root_page.md | |
- "Data management page template": tp_templates/pages/data_management_page.md | |
- "Scenario management page template": tp_templates/pages/sdm_page.md | |
- "Job management page template": tp_templates/pages/job_management_page.md | |
- "Login page template": tp_templates/pages/login_page.md | |
- "Templates": | |
- "Templates": tp_templates/index.md | |
- "Application templates": | |
- "Default application": tp_templates/applications/default_app.md | |
- "Scenario management application": tp_templates/applications/sdm_app.md | |
- "Page templates": | |
- "Default page": tp_templates/pages/default_page.md | |
- "Layout": tp_templates/pages/root_page.md | |
- "Data management": tp_templates/pages/data_management_page.md | |
- "Scenario management": tp_templates/pages/sdm_page.md | |
- "Job management": tp_templates/pages/job_management_page.md | |
- "Login": tp_templates/pages/login_page.md | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed!!
Building a Taipy application can require a good amount of time and effort, in particular at the | ||
beginning of a project. This can delay the time-to-market and increase development costs. | ||
|
||
To reduce the development time, Taipy provides a simple and minimal application template which let | ||
you create a custom application that just works out-of-the-box with a few questions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These 5 lines are not specific to the default template. It is a motivation for using a template. Maybe we can move them to the tp_templates/index.md
page.
Building a Taipy application can require a good amount of time and effort, in particular at the | |
beginning of a project. This can delay the time-to-market and increase development costs. | |
To reduce the development time, Taipy provides a simple and minimal application template which let | |
you create a custom application that just works out-of-the-box with a few questions. | |
The default template provides a minimalistic starting point for users to build upon, | |
offering a basic structure without additional features. It's a perfect template for users | |
who prefer to customize their applications from the ground up without predefined pages or | |
visual elements. |
This default template offers several key benefits: | ||
|
||
- **Ease of Use**: The template is designed to be user-friendly, with a simple CLI | ||
interface that guides developers through the application creation process. | ||
- **Comprehensive Features**: The template supports a wide range of functionalities, including | ||
multi-page support, authentication, scenario management, Rest API, Git and Docker support. | ||
- **Accelerated Development**: By leveraging the wide range of features provided by the template, | ||
developers can quickly bootstrap a standard application, saving significant development time to | ||
focus on delivering business value more efficiently. | ||
- **Customization**: The template provides high flexibility and customization options on application | ||
creation. The resulting application is also highly customizable with placeholders, allowing | ||
developers to tailor the application to meet specific requirements and use cases. | ||
- **Deployment-Ready**: With support for Git and Docker, the template provides helpers for both | ||
development and production environments. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a bit too verbose to me. In particular, I believe we can remove the parts that are not specific to this template. What about being more straight to the point as follows:
This default template offers several key benefits: | |
- **Ease of Use**: The template is designed to be user-friendly, with a simple CLI | |
interface that guides developers through the application creation process. | |
- **Comprehensive Features**: The template supports a wide range of functionalities, including | |
multi-page support, authentication, scenario management, Rest API, Git and Docker support. | |
- **Accelerated Development**: By leveraging the wide range of features provided by the template, | |
developers can quickly bootstrap a standard application, saving significant development time to | |
focus on delivering business value more efficiently. | |
- **Customization**: The template provides high flexibility and customization options on application | |
creation. The resulting application is also highly customizable with placeholders, allowing | |
developers to tailor the application to meet specific requirements and use cases. | |
- **Deployment-Ready**: With support for Git and Docker, the template provides helpers for both | |
development and production environments. | |
The template provides support for: | |
- Multi-pages | |
- Authentication | |
- scenario management | |
- Rest API | |
- gitignore setup | |
- Docker file setup |
## 1. Application root folder | ||
|
||
- Specifies the root folder of the application. | ||
- The default value is "taipy_application". | ||
|
||
## 2. Application main Python file | ||
|
||
- Sets the name of the main Python file (entry point) of the application. | ||
- The default value is "main.py". | ||
|
||
## 3. Application title | ||
|
||
- Specifies the title displayed in the web application. | ||
- The default value is "Taipy Application". | ||
|
||
## 4. With multi-pages | ||
|
||
- Specifies whether the application is a single-page or multi-page. | ||
- For a multi-page application, enter the page names separated by spaces. If left blank, the | ||
application will default to single page. | ||
- The page names must be valid Python identifiers. | ||
- Once the application is created, all pages will be created in the `pages` folder as empty | ||
pages. You can add content to the pages as needed. | ||
- The default value is an empty string, which creates a single-page application. | ||
|
||
## 5. With Authentication | ||
|
||
- Indicates whether the application includes authentication. | ||
- If yes, a login page and a basic setup for for configuring authentication will be included | ||
in the application. | ||
- A login page will be created at `pages/login.py`, which uses the | ||
[Taipy login control](../../refmans/gui/viselements/generic/login.md). | ||
- A basic authentication configuration will be added to the `configuration/auth_config.py` file. | ||
By default, the authentication will use the | ||
[Taipy protocol](../../userman/advanced_features/auth/authentication.md#taipy-protocol). | ||
You can customize the authentication method as needed. | ||
- The default value is "No". | ||
|
||
## 6. With scenario management | ||
|
||
- Specifies whether the application uses scenario management. | ||
- If yes: | ||
- The Taipy `Orchestrator^` service will be included to handle job orchestration and version | ||
management. | ||
- A scaffold configuration file will be created at `configuration/config.py`. You can put your | ||
application's configuration here and it will be imported to the main application file. | ||
- A scaffold `algorithms/algorithms.py` file will be created, which is designed to contain the | ||
various Python functions used to configure tasks. You can add your tasks' functions here and | ||
they will be imported to the main application file. | ||
- The default value is "No". | ||
|
||
## 7. With a Rest API | ||
|
||
- Specifies whether the application uses Taipy Rest. | ||
- If yes, the Taipy `Rest^` service will be included in the application. | ||
- The default value is "No". | ||
|
||
## 8. With a new Git repository | ||
|
||
- Specifies whether the application will be initialized as a new Git repository. | ||
- The default value is "No". | ||
|
||
## 9. With Docker deployment | ||
|
||
- Specifies Docker support for the application. | ||
- Options: | ||
- "No": No Docker support. | ||
- "For development": Add a minimal version of `Dockerfile` and `docker-compose.yml` for development. | ||
- "For production": Add a production-ready `Dockerfile` and `docker-compose.yml`. | ||
- The default value is "No". |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The TOC is too heavy. I would not make each item a section.
## 1. Application root folder | |
- Specifies the root folder of the application. | |
- The default value is "taipy_application". | |
## 2. Application main Python file | |
- Sets the name of the main Python file (entry point) of the application. | |
- The default value is "main.py". | |
## 3. Application title | |
- Specifies the title displayed in the web application. | |
- The default value is "Taipy Application". | |
## 4. With multi-pages | |
- Specifies whether the application is a single-page or multi-page. | |
- For a multi-page application, enter the page names separated by spaces. If left blank, the | |
application will default to single page. | |
- The page names must be valid Python identifiers. | |
- Once the application is created, all pages will be created in the `pages` folder as empty | |
pages. You can add content to the pages as needed. | |
- The default value is an empty string, which creates a single-page application. | |
## 5. With Authentication | |
- Indicates whether the application includes authentication. | |
- If yes, a login page and a basic setup for for configuring authentication will be included | |
in the application. | |
- A login page will be created at `pages/login.py`, which uses the | |
[Taipy login control](../../refmans/gui/viselements/generic/login.md). | |
- A basic authentication configuration will be added to the `configuration/auth_config.py` file. | |
By default, the authentication will use the | |
[Taipy protocol](../../userman/advanced_features/auth/authentication.md#taipy-protocol). | |
You can customize the authentication method as needed. | |
- The default value is "No". | |
## 6. With scenario management | |
- Specifies whether the application uses scenario management. | |
- If yes: | |
- The Taipy `Orchestrator^` service will be included to handle job orchestration and version | |
management. | |
- A scaffold configuration file will be created at `configuration/config.py`. You can put your | |
application's configuration here and it will be imported to the main application file. | |
- A scaffold `algorithms/algorithms.py` file will be created, which is designed to contain the | |
various Python functions used to configure tasks. You can add your tasks' functions here and | |
they will be imported to the main application file. | |
- The default value is "No". | |
## 7. With a Rest API | |
- Specifies whether the application uses Taipy Rest. | |
- If yes, the Taipy `Rest^` service will be included in the application. | |
- The default value is "No". | |
## 8. With a new Git repository | |
- Specifies whether the application will be initialized as a new Git repository. | |
- The default value is "No". | |
## 9. With Docker deployment | |
- Specifies Docker support for the application. | |
- Options: | |
- "No": No Docker support. | |
- "For development": Add a minimal version of `Dockerfile` and `docker-compose.yml` for development. | |
- "For production": Add a production-ready `Dockerfile` and `docker-compose.yml`. | |
- The default value is "No". | |
1. Application root folder | |
- Specifies the root folder of the application. | |
- The default value is "taipy_application". | |
2. Application main Python file | |
- Sets the name of the main Python file (entry point) of the application. | |
- The default value is "main.py". | |
3. Application title | |
- Specifies the title displayed in the web application. | |
- The default value is "Taipy Application". | |
4. With multi-pages | |
- Specifies whether the application is a single-page or multi-page. | |
- For a multi-page application, enter the page names separated by spaces. If left blank, the | |
application will default to single page. | |
- The page names must be valid Python identifiers. | |
- Once the application is created, all pages will be created in the `pages` folder as empty | |
pages. You can add content to the pages as needed. | |
- The default value is an empty string, which creates a single-page application. | |
5. With Authentication | |
- Indicates whether the application includes authentication. | |
- If yes, a login page and a basic setup for configuring authentication will be included | |
in the application. | |
- A login page will be created at `pages/login.py`, which uses the | |
[Taipy login control](../../refmans/gui/viselements/generic/login.md). | |
- A basic authentication configuration will be added to the `configuration/auth_config.py` file. | |
By default, the authentication will use the | |
[Taipy protocol](../../userman/advanced_features/auth/authentication.md#taipy-protocol). | |
You can customize the authentication method as needed. | |
- The default value is "No". | |
6. With scenario management | |
- Specifies whether the application uses scenario management. | |
- If yes: | |
- The Taipy `Orchestrator^` service will be included to handle job orchestration and version | |
management. | |
- A scaffold configuration file will be created at `configuration/config.py`. You | |
can put your application's configuration here. It will be imported to the main | |
application file. | |
- A scaffold `algorithms/algorithms.py` file will be created, which is designed to | |
contain the various Python functions used to configure tasks. You can add your | |
tasks' functions here. They will be imported to the main application file. | |
- The default value is "No". | |
7. With a Rest API | |
- Specifies whether the application uses Taipy Rest. | |
- If yes, the Taipy `Rest^` service will be included in the application. | |
- The default value is "No". | |
8. With a new Git repository | |
- Specifies whether the application will be initialized as a new Git repository. | |
- The default value is "No". | |
9. With Docker deployment | |
- Specifies Docker support for the application. | |
- Options: | |
- "No": No Docker support. | |
- "For development": Add a minimal version of `Dockerfile` and `docker-compose.yml` | |
for development. | |
- "For production": Add a production-ready `Dockerfile` and `docker-compose.yml`. | |
- The default value is "No". |
Everything in the generated application can be updated to precisely fit your needs. It includes | ||
the Python code, the configuration files, placeholders, and any other resources. | ||
|
||
## Customizing the scenario management feature |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customizing the scenario management feature | |
## Custom tasks and scenarios |
# ############################################################################# | ||
``` | ||
|
||
## Customize the authentication feature |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customize the authentication feature | |
## Custom authentication |
The role required to access the admin page is defined by the `admin_page_filter` variable by the | ||
`AnyOf^` filter. | ||
|
||
## Customizing the pages |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customizing the pages | |
## Custom pages |
- *main.py*: The main Python file of the application. | ||
- *requirements.txt*: Contains the Python dependencies required by the application. | ||
|
||
# Customizing the application |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Customizing the application | |
# How to customize the application |
To simplify the process of starting a new Taipy application, Taipy offers a set of templates that | ||
provides a comfortable developer-friendly environment through the `create` command. | ||
|
||
With Taipy application templates, you can easily initiate a new Taipy application as a starting | ||
point for your project with best practices for code organization. Available application templates: | ||
|
||
[:material-arrow-right: Default application template](applications/default_app.md), | ||
|
||
[:material-arrow-right: Scenario management application template](applications/sdm_app.md), | ||
|
||
Taipy also provides page templates, which can be used to create new pages on top of the existing | ||
application. Once generated, the pages can be easily customized and plugged into the application. | ||
|
||
!!! note "Available in Taipy Enterprise edition" | ||
|
||
The page templates are only available in the [Taipy Enterprise Edition](https://taipy.io/enterprise). | ||
|
||
[Contact us](https://taipy.io/book-a-call){: .tp-btn .tp-btn--accent target='blank' } | ||
|
||
Available page templates: | ||
|
||
[:material-arrow-right: Default page template](pages/default_page.md), | ||
|
||
[:material-arrow-right: Root page template](pages/root_page.md), | ||
|
||
[:material-arrow-right: Data management page template](pages/data_management_page.md), | ||
|
||
[:material-arrow-right: Scenario management page template](pages/sdm_page.md), | ||
|
||
[:material-arrow-right: Job management page template](pages/job_management_page.md), | ||
|
||
[:material-arrow-right: Login page template](pages/login_page.md), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I propose to have an index page similar to tutorials and gallery.
To simplify the process of starting a new Taipy application, Taipy offers a set of templates that | |
provides a comfortable developer-friendly environment through the `create` command. | |
With Taipy application templates, you can easily initiate a new Taipy application as a starting | |
point for your project with best practices for code organization. Available application templates: | |
[:material-arrow-right: Default application template](applications/default_app.md), | |
[:material-arrow-right: Scenario management application template](applications/sdm_app.md), | |
Taipy also provides page templates, which can be used to create new pages on top of the existing | |
application. Once generated, the pages can be easily customized and plugged into the application. | |
!!! note "Available in Taipy Enterprise edition" | |
The page templates are only available in the [Taipy Enterprise Edition](https://taipy.io/enterprise). | |
[Contact us](https://taipy.io/book-a-call){: .tp-btn .tp-btn--accent target='blank' } | |
Available page templates: | |
[:material-arrow-right: Default page template](pages/default_page.md), | |
[:material-arrow-right: Root page template](pages/root_page.md), | |
[:material-arrow-right: Data management page template](pages/data_management_page.md), | |
[:material-arrow-right: Scenario management page template](pages/sdm_page.md), | |
[:material-arrow-right: Job management page template](pages/job_management_page.md), | |
[:material-arrow-right: Login page template](pages/login_page.md), | |
To avoid spending too much time and effort creating an application, in particular at | |
the beginning of a project, Taipy offers a set of templates that provides a | |
comfortable developer-friendly environment through the `create` command. | |
It significantly reduces the time-to-market, increases developer efficiency, and enforces | |
Taipy good practices. | |
<!-- Quick accesses --> | |
<div class="tp-row tp-row--gutter-sm"> | |
<div class="tp-col-12 tp-col-md-4 d-flex"> | |
<a class="tp-content-card tp-content-card--primary" href="#application-templates"> | |
<header class="tp-content-card-header"> | |
<img class="tp-content-card-icon--small" src="img/visualize.svg"> | |
<h3>Application templates</h3> | |
</header> | |
<div class="tp-content-card-body"> | |
<p> | |
Initiate a new Taipy application as a starting point for your project. | |
</p> | |
</div> | |
</a> | |
</div> | |
<div class="tp-col-12 tp-col-md-4 d-flex"> | |
<a class="tp-content-card tp-content-card--alpha" href="#page-templates"> | |
<header class="tp-content-card-header"> | |
<img class="tp-content-card-icon--small" src="img/visualize.svg"> | |
<h3>Page templates</h3> | |
</header> | |
<div class="tp-content-card-body"> | |
<p> | |
Creates new pages on top of existing applications. | |
</p> | |
</div> | |
</a> | |
</div> | |
</div> | |
# Application templates | |
With Taipy application templates, you can easily initiate a new Taipy application as a starting | |
point for your project with best practices for code organization. Available application templates: | |
[:material-arrow-right: Default application template](applications/default_app.md), | |
[:material-arrow-right: Scenario management application template](applications/sdm_app.md), | |
# Page templates | |
Taipy also provides page templates, which can be used to create new pages on top of the existing | |
application. Once generated, the pages can be easily customized and plugged into the application. | |
!!! note "Available in Taipy Enterprise edition" | |
The page templates are only available in the [Taipy Enterprise Edition](https://taipy.io/enterprise). | |
[Contact us](https://taipy.io/book-a-call){: .tp-btn .tp-btn--accent target='blank' } | |
Available page templates: | |
[:material-arrow-right: Default page template](pages/default_page.md), | |
[:material-arrow-right: Root page template](pages/root_page.md), | |
[:material-arrow-right: Data management page template](pages/data_management_page.md), | |
[:material-arrow-right: Scenario management page template](pages/sdm_page.md), | |
[:material-arrow-right: Job management page template](pages/job_management_page.md), | |
[:material-arrow-right: Login page template](pages/login_page.md), |
|
||
[Contact us](https://taipy.io/book-a-call){: .tp-btn .tp-btn--accent target='blank' } | ||
|
||
## 1. Application root folder |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would turn the title into an enumeration to make the TOC lighter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No authorization here?
[scenario_dag](../../refmans/gui/viselements/corelements/scenario_dag.md) | ||
and the [data_node](../../refmans/gui/viselements/corelements/data_node.md) | ||
visual elements. | ||
- *.taipyignore*: Specifies files to be protected when running the web server. Please refer to the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are missing the .gitignore here.
[login](../../refmans/gui/viselements/generic/login.md) visual element. | ||
- *admin/* contains an example admin page for the authentication feature that only authenticated | ||
users with the "TAIPY_ADMIN" role can access. | ||
- *docker-compose.yml* and *Dockerfile*: The Docker configuration for building and running the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are missing the .gitignore and the .taipyignore. No?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was afraid of making this section too long tbh.
Maybe we can add the .taipyignore
back.
Documenting the .gitignore
here is quite unnecessary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, probably the .gitignore is unnecessary. If you don't feel like adding it, I am ok.
The .taipyignore is important, though, for security reasons.
Building a Taipy application with multiple complex scenarios usually requires a | ||
significant amount of time and effort, in particular at the beginning of a project | ||
when the user interface requirements are not completely stable. This can delay the | ||
time-to-market and increase development costs. | ||
|
||
To reduce the development time, Taipy provides a scenario management application template, | ||
which leverages Taipy visual elements to speed up bootstrapping a standard application. | ||
|
||
Out-of-the-box, the scenario management application is a multi-page Taipy application | ||
that allows the user to visualize and manage scenarios and data nodes. The user can select a | ||
scenario, view its directed acyclic graph (DAG), manage its data nodes, upload data files, | ||
and submit the scenario for execution. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Building a Taipy application with multiple complex scenarios usually requires a | |
significant amount of time and effort, in particular at the beginning of a project | |
when the user interface requirements are not completely stable. This can delay the | |
time-to-market and increase development costs. | |
To reduce the development time, Taipy provides a scenario management application template, | |
which leverages Taipy visual elements to speed up bootstrapping a standard application. | |
Out-of-the-box, the scenario management application is a multi-page Taipy application | |
that allows the user to visualize and manage scenarios and data nodes. The user can select a | |
scenario, view its directed acyclic graph (DAG), manage its data nodes, upload data files, | |
and submit the scenario for execution. | |
The scenario management template provides a foundational structure for applications | |
requiring scenario-based analysis and data management. It's designed to help users create, | |
manage, and compare different scenarios to facilitate decision-making and what-if | |
analyses. It is ideal for applications in forecasting, simulation, and optimization, where | |
multiple scenarios need to be evaluated and compared. | |
Out of the box, the template provides a multi-page application structure with two pages predefined: | |
- A scenario page to select, visualize, submit, analyze, and manage scenarios and data nodes. | |
- A job page to monitor and manage submissions and jobs. |
This template offers several key benefits: | ||
|
||
- **Accelerated Development**: By leveraging scenario and data management visual elements, | ||
developers can quickly bootstrap a standard application, saving significant | ||
development time to focus on delivering business value more efficiently. | ||
- **Comprehensive Features**: The template provides a best-practice folder scaffolding for a | ||
scenario management application, which supports a wide range of functionalities, including | ||
data and scenario visualization, job orchestration monitoring, providing a comprehensive | ||
solution for various use cases. | ||
- **Customization**: The generated application is highly customizable with pre-built | ||
placeholders for various components, allowing developers to tailor the application | ||
to meet specific requirements and use cases. | ||
- **Deployment-Ready**: The template provides Docker deployment helpers for both development purpose | ||
and production environment. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This template offers several key benefits: | |
- **Accelerated Development**: By leveraging scenario and data management visual elements, | |
developers can quickly bootstrap a standard application, saving significant | |
development time to focus on delivering business value more efficiently. | |
- **Comprehensive Features**: The template provides a best-practice folder scaffolding for a | |
scenario management application, which supports a wide range of functionalities, including | |
data and scenario visualization, job orchestration monitoring, providing a comprehensive | |
solution for various use cases. | |
- **Customization**: The generated application is highly customizable with pre-built | |
placeholders for various components, allowing developers to tailor the application | |
to meet specific requirements and use cases. | |
- **Deployment-Ready**: The template provides Docker deployment helpers for both development purpose | |
and production environment. | |
The template provides support for: | |
- Multi-pages structure | |
- Scenario and data management | |
- Job monitoring | |
- gitignore setup | |
- Docker file setup |
│ ├──── scenario_page/ | ||
│ └──── root.py | ||
│ | ||
├──── .taipyignore |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
missing the gitignore, no?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No auth?
the **algos/** and **config/** folders, there are placeholders that you can customize | ||
precisely to your use case. | ||
|
||
## Customizing the tasks' functions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customizing the tasks' functions | |
## Custom tasks |
update the import statements in the *algos/\_\_init\_\_.py* file and any other | ||
import statements. | ||
|
||
## Customizing the configuration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customizing the configuration | |
## Custom configuration |
If you have a different name for the TOML file, make sure to update the file name in the | ||
`configure()` method. | ||
|
||
## Customizing the pages |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Customizing the pages | |
## Custom pages |
- *main.py*: The main Python file of the application. | ||
- *requirements.txt*: Contains the Python dependencies required by the application. | ||
|
||
# Customizing the application |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Customizing the application | |
# How to customize the application |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Make sure that " binding variable" does not appear.
It is confusing.
@@ -0,0 +1,32 @@ | |||
To simplify the process of starting a new Taipy application, Taipy offers a set of templates that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To simplify the process of starting a new Taipy application, Taipy offers a set of templates that | |
To simplify the process of starting to enjoy Taipy, we offers a set of application templates that |
|
||
- Specifies whether the application is a single-page or multi-page. | ||
- For a multi-page application, enter the page names separated by spaces. If left blank, the | ||
application will default to single page. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
application will default to single page. | |
application will have a single page. |
- For a multi-page application, enter the page names separated by spaces. If left blank, the | ||
application will default to single page. | ||
- The page names must be valid Python identifiers. | ||
- Once the application is created, all pages will be created in the `pages` folder as empty |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Once the application is created, all pages will be created in the `pages` folder as empty | |
- Once the application is created, all pages are created in the `pages` folder as empty |
## 5. With Authentication | ||
|
||
- Indicates whether the application includes authentication. | ||
- If yes, a login page and a basic setup for for configuring authentication will be included |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- If yes, a login page and a basic setup for for configuring authentication will be included | |
- If yes, a login page and a basic setup for configuring authentication is included |
- Indicates whether the application includes authentication. | ||
- If yes, a login page and a basic setup for for configuring authentication will be included | ||
in the application. | ||
- A login page will be created at `pages/login.py`, which uses the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- A login page will be created at `pages/login.py`, which uses the | |
- A *login* page is created in `pages/login.py`, which uses the |
|
||
For managing data nodes, you can customize the | ||
[data_node_selector](../../refmans/gui/viselements/corelements/data_node_selector.md) | ||
and [data_node](../../refmans/gui/viselements/corelements/data_node.md) visual elements which |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
and [data_node](../../refmans/gui/viselements/corelements/data_node.md) visual elements which | |
and [data_node](../../refmans/gui/viselements/corelements/data_node.md) controls which |
gui.run() | ||
``` | ||
|
||
You can also explicitly import the `selected_scenario` and `selected_data_node` binding variables |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can also explicitly import the `selected_scenario` and `selected_data_node` binding variables | |
You can also explicitly import the *selected_scenario* and *selected_data_node* variables |
|
||
## List of application templates | ||
# List the application templates |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# List the application templates | |
# Application templates list |
- "Templates": | ||
- "Templates": tp_templates/index.md | ||
- "Application templates": | ||
- "Default application template": tp_templates/applications/default_app.md |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- "Default application template": tp_templates/applications/default_app.md | |
- "Default application": tp_templates/applications/default_app.md |
I would certainly remove those ' templates' everywhere: we' re in the ' templates' section
- "Templates": | ||
- "Templates": tp_templates/index.md | ||
- "Application templates": | ||
- "Default application template": tp_templates/applications/default_app.md | ||
- "Scenario management template": tp_templates/applications/sdm_app.md | ||
- "Page templates": | ||
- "Default page template": tp_templates/pages/default_page.md | ||
- "Root page template": tp_templates/pages/root_page.md | ||
- "Data management page template": tp_templates/pages/data_management_page.md | ||
- "Scenario management page template": tp_templates/pages/sdm_page.md | ||
- "Job management page template": tp_templates/pages/job_management_page.md | ||
- "Login page template": tp_templates/pages/login_page.md | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed!!
Resolves #1209
See temporary results on ReadTheDocs/doc-1209-application-templates.
TODO: