Skip to content

Rename refguide and howto docs to refguide10 and howto10 #9354

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

Merged
merged 7 commits into from
Apr 17, 2025
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion content/en/docs/howto10/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Studio Pro 10 How-tos"
url: /howto/
url: /howto10/
description: "Step-by-step guides on various Mendix topics that teach you how to build and customize apps."
weight: 15
no_list: false
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/howto10/data-models/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Data Models"
url: /howto/data-models/
url: /howto10/data-models/
weight: 50
description: "Presents a list of how-tos on creating data layers and setting up data validation."
no_list: false
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Denormalize Data to Improve Performance"
url: /howto/data-models/denormalize-data-to-improve-performance/
url: /howto10/data-models/denormalize-data-to-improve-performance/
weight: 6
description: "Describes how to denormalize data and keep denormalized data in sync in Studio Pro."
---
Expand All @@ -18,7 +18,7 @@ This how-to teaches you how to do the following:

Before starting this how-to, make sure you have completed the following prerequisites:

* [Configure a domain model](/refguide/configuring-a-domain-model/)
* [Configure a domain model](/refguide10/configuring-a-domain-model/)

## Denormalization

Expand All @@ -29,7 +29,7 @@ To show the total order amount, there are two options:
* First option: create a calculated attribute in the Customer entity to compute the total order amount
* The drawback of this option is that the calculated attributes bring down the performance of overview pages
* Second option: create a persistable attribute in the Customer entity that stores the total order amount in the database – this is called denormalization
* The drawback of this option is that the redundant data needs to be kept in sync (but this is easy with Mendix [event handlers](/refguide/event-handlers/))
* The drawback of this option is that the redundant data needs to be kept in sync (but this is easy with Mendix [event handlers](/refguide10/event-handlers/))

To enable denormalization, follow these steps:

Expand Down Expand Up @@ -143,10 +143,10 @@ Now the application is ready to store redundant data, but you still need to keep

## Read More

* [Configuring a Domain Model](/refguide/configuring-a-domain-model/)
* [Setting Up Data Validation](/refguide/setting-up-data-validation/)
* [Find the Root Cause of Runtime Errors](/howto/monitoring-troubleshooting/finding-the-root-cause-of-runtime-errors/)
* [Configuring a Domain Model](/refguide10/configuring-a-domain-model/)
* [Setting Up Data Validation](/refguide10/setting-up-data-validation/)
* [Find the Root Cause of Runtime Errors](/howto10/monitoring-troubleshooting/finding-the-root-cause-of-runtime-errors/)
* [Epics](/developerportal/project-management/epics/)
* [Defining Access Rules Using XPath](/refguide/define-access-rules-using-xpath/)
* [Attributes](/refguide/attributes/)
* [Event Handlers](/refguide/event-handlers/)
* [Defining Access Rules Using XPath](/refguide10/define-access-rules-using-xpath/)
* [Attributes](/refguide10/attributes/)
* [Event Handlers](/refguide10/event-handlers/)
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Migrate Your Mendix Database"
url: /howto/data-models/migrating-your-mendix-database/
url: /howto10/data-models/migrating-your-mendix-database/
weight: 10
description: "Describes how to migrate a non-PostgreSQL database to a PostgreSQL database, export a PostgreSQL database, and perform other actions for database migration."
---
Expand All @@ -19,7 +19,7 @@ After completing this how-to, you will know how to do the following:
* Migrate a PostgreSQL database to a non-PostgreSQL database, including migrating a PostgreSQL database to SAP HANA

{{% alert color="warning" %}}
You cannot use these methods to transfer data from one app to another. This is because each app labels the entities uniquely, even if the name in the domain model is the same. For more information, see [Data Storage](/refguide/data-storage/).
You cannot use these methods to transfer data from one app to another. This is because each app labels the entities uniquely, even if the name in the domain model is the same. For more information, see [Data Storage](/refguide10/data-storage/).

If you want to copy data to another app, Mendix recommends using the [Database Replication](/appstore/modules/database-replication/) module.
{{% /alert %}}
Expand All @@ -38,7 +38,7 @@ These are the most commonly used custom settings for database migration:
* SourceDatabaseUserName
* SourceDatabasePassword

For more information and the full list of available settings, see [Runtime Customization](/refguide/custom-settings/).
For more information and the full list of available settings, see [Runtime Customization](/refguide10/custom-settings/).

These settings can be configured as follows:

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: "Share the Development Database"
url: /howto/data-models/sharing-the-development-database/
url: /howto10/data-models/sharing-the-development-database/
weight: 9
description: "Describes how to open and manage the data stored inside the built-in database that is supplied with Studio Pro."
aliases:
- /howto/collaboration-requirements-management/sharing-the-development-database/
- /howto10/collaboration-requirements-management/sharing-the-development-database/
---

## Introduction
Expand Down Expand Up @@ -125,4 +125,4 @@ If you want to keep a copy of your existing data before using the data from the

## Read More

* [Version Control](/refguide/version-control/)
* [Version Control](/refguide10/version-control/)
2 changes: 1 addition & 1 deletion content/en/docs/howto10/extensibility/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Extensibility"
url: /howto/extensibility/
url: /howto10/extensibility/
description: "Presents a selection of how-tos that explain how to use connectors and adapters from the Marketplace."
weight: 80
no_list: false
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "Implement Best Practices for JavaScript Actions"
linktitle: "JavaScript Actions Best Practices"
url: /howto/extensibility/best-practices-javascript-actions/
url: /howto10/extensibility/best-practices-javascript-actions/
weight: 60
description: "Describes how to create high-quality JavaScript actions, use common implementation patterns, design better APIs, and use JavaScript actions in nanoflows."
---
Expand Down Expand Up @@ -148,7 +148,7 @@ function CameraStart(targetSize, pictureSource, correctOrientation, waterMark) {
}
```

For more detail on input types, see [JavaScript Actions](/refguide/javascript-actions/). For more information on choosing correct input types, see the [Better APIs](#betterapis) section below.
For more detail on input types, see [JavaScript Actions](/refguide10/javascript-actions/). For more information on choosing correct input types, see the [Better APIs](#betterapis) section below.

### Coding the Actions

Expand Down Expand Up @@ -253,7 +253,7 @@ Below is an example of using an external dependency based on [pdf-lib](https://g

### Understanding Returns

The JavaScript action can specify a return type such as Integer, DateTime, Object, List of object, and Generics. For more information on returns, see [JavaScript Actions](/refguide/javascript-actions/).
The JavaScript action can specify a return type such as Integer, DateTime, Object, List of object, and Generics. For more information on returns, see [JavaScript Actions](/refguide10/javascript-actions/).

Actions can be synchronous or asynchronous. Synchronous actions will directly return the value and finish executing. An asynchronous action will return a promise, and will continue to execute and finish at a later time. The nanoflow will continue to execute when the promise is resolved.

Expand Down Expand Up @@ -348,7 +348,7 @@ Explaining the Fetch API code:

* As this is an async function, error handling at all three steps: fetch, parse JSON, and accessing the data can be done inside a single `try...catch` block (for a more detailed explanation, see the [MDN documentation for error handling with async/await](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/Async_await#adding_error_handling)).

* For more information on building a JavaScript action rest consume function, see [Build JavaScript Actions: Part 2 (Advanced)](/howto/extensibility/write-javascript-github/).
* For more information on building a JavaScript action rest consume function, see [Build JavaScript Actions: Part 2 (Advanced)](/howto10/extensibility/write-javascript-github/).

#### Understanding Common Promise Functions

Expand Down Expand Up @@ -448,7 +448,7 @@ Well-documented actions are easier to reuse. Consider the following when documen

An extensive test app can help make a JavaScript action more robust. Within a test app, try to create all possible variations of the input, accounting for empty inputs and error cases that should be handled.

When testing, make sure you to check all compatible platforms (web and native). The web should handle the Mendix browser compatibility. For further information about compatibility, see the [Browsers](/refguide/system-requirements/#browsers) section of *System Requirements*.
When testing, make sure you to check all compatible platforms (web and native). The web should handle the Mendix browser compatibility. For further information about compatibility, see the [Browsers](/refguide10/system-requirements/#browsers) section of *System Requirements*.

When an action is not compatible with the platform, make sure it can be checked with an additional action before running into an error. For example, employ a `CheckCameraSupport` action before starting a camera. When an action is called but not compatible, it should fail gracefully or display a clear error message.

Expand All @@ -474,8 +474,8 @@ Not all capabilities are recommended for use. Consider the side effects that an

## Read More

* [Build JavaScript Actions](/howto/extensibility/build-javascript-actions/)
* [JavaScript Actions](/refguide/javascript-actions/)
* [Build JavaScript Actions](/howto10/extensibility/build-javascript-actions/)
* [JavaScript Actions](/refguide10/javascript-actions/)
* [Mendix Client API](/apidocs-mxsdk/apidocs/client-api/)
* JavaScript basics:
* [Mozilla JavaScript Basics](https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
title: "Build JavaScript Actions"
url: /howto/extensibility/build-javascript-actions/
url: /howto10/extensibility/build-javascript-actions/
weight: 40
description: "Presents a series of how-tos to build JavaScript actions step by step."
---

Nanoflows are even more powerful with pluggable nanoflow actions — called JavaScript actions. With JavaScript actions, the standard set of actions can be extended with new functionality. This how-to series teaches you to harness the power of JavaScript actions step by step:

* [Build JavaScript Actions: Part 1 (Basic)](/howto/extensibility/write-javascript-actions/)
* [Build JavaScript Actions: Part 2 (Advanced)](/howto/extensibility/write-javascript-github/)
* [Build JavaScript Actions for Native Mobile](/howto/extensibility/create-native-javascript-action/)
* [Build JavaScript Actions: Part 1 (Basic)](/howto10/extensibility/write-javascript-actions/)
* [Build JavaScript Actions: Part 2 (Advanced)](/howto10/extensibility/write-javascript-github/)
* [Build JavaScript Actions for Native Mobile](/howto10/extensibility/create-native-javascript-action/)
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Build JavaScript Actions for Native Mobile"
url: /howto/extensibility/create-native-javascript-action/
url: /howto10/extensibility/create-native-javascript-action/
weight: 30
description: "This how-to teaches you how to build a JavaScript action for native mobile apps."
---
Expand Down Expand Up @@ -209,11 +209,11 @@ This dialog box is your phone's operating system recognizing the NFC tag. On And

### Building a Native Custom Developer App {#custom-developer-app}

When developing a native mobile app, you can use the [Make it Native](/refguide/getting-the-make-it-native-app/) app to quickly get started. However, this app is bundled with a limited number of functionalities. This tutorial's app requires an NFC module in order to access the native NFC capabilities. This can only be achieved by building a custom developer app. To build and install a custom developer app, follow the steps in [Create a Custom Developer App](/refguide/mobile/distributing-mobile-apps/building-native-apps/how-to-devapps/).
When developing a native mobile app, you can use the [Make it Native](/refguide10/getting-the-make-it-native-app/) app to quickly get started. However, this app is bundled with a limited number of functionalities. This tutorial's app requires an NFC module in order to access the native NFC capabilities. This can only be achieved by building a custom developer app. To build and install a custom developer app, follow the steps in [Create a Custom Developer App](/refguide10/mobile/distributing-mobile-apps/building-native-apps/how-to-devapps/).

### Testing the NFC Custom Developer App

After you have finished the steps outlined in [Create a Custom Developer App](/refguide/mobile/distributing-mobile-apps/building-native-apps/how-to-devapps/), try it out.
After you have finished the steps outlined in [Create a Custom Developer App](/refguide10/mobile/distributing-mobile-apps/building-native-apps/how-to-devapps/), try it out.

1. Open the app
1. Tap **Scan tag**
Expand Down Expand Up @@ -315,12 +315,12 @@ Congratulations on making your own native JavaScript action! Please use your own

Until this section, you have used a custom developer app to validate your application. When you want to distribute your app in the Google Play Store or Apple App Store, you have to make a build that includes the bundled Mendix app.

For the full explanation on how to build, sign, and distribute your app to an app store see [Build a Mendix Native App in the Cloud](/refguide/mobile/distributing-mobile-apps/building-native-apps/deploying-native-app/), as well as the tutorial's subsequent sections.
For the full explanation on how to build, sign, and distribute your app to an app store see [Build a Mendix Native App in the Cloud](/refguide10/mobile/distributing-mobile-apps/building-native-apps/deploying-native-app/), as well as the tutorial's subsequent sections.

## Read More

* [How to Build a Mendix Native App in the Cloud](/refguide/mobile/distributing-mobile-apps/building-native-apps/deploying-native-app/)
* [JavaScript Actions Reference Guide](/refguide/javascript-actions/)
* [How To Build JavaScript actions](/howto/extensibility/build-javascript-actions/)
* [How to Build a Mendix Native App in the Cloud](/refguide10/mobile/distributing-mobile-apps/building-native-apps/deploying-native-app/)
* [JavaScript Actions Reference Guide](/refguide10/javascript-actions/)
* [How To Build JavaScript actions](/howto10/extensibility/build-javascript-actions/)
* [Declaring Native Dependencies](/apidocs-mxsdk/apidocs/pluggable-widgets-native-dependencies/)
* GitHub's [NFC React Native Library](https://github.com/whitedogg13/react-native-nfc-manager)
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: "Build JavaScript Actions: Part 1 (Basic)"
linktitle: "1. Build JavaScript Actions"
url: /howto/extensibility/write-javascript-actions/
url: /howto10/extensibility/write-javascript-actions/
weight: 10
description: "This how-to teaches you how to create a JavaScript action."
---

## Introduction

Nanoflows are more powerful with pluggable nanoflow actions — called JavaScript actions. With JavaScript actions, the standard set of actions can be extended with new functionality. A JavaScript action is a reusable action based on JavaScript that runs in the client just like the nanoflow, and can use capabilities such as HTML5 browser functions, Cordova plugins, and React Native modules. JavaScript actions are similar to [Java actions](/refguide/java-actions/), but run on the client instead of the server. To share them inside your organization, JavaScript actions can be distributed and downloaded through the private [Mendix Marketplace](https://marketplace.mendix.com/).
Nanoflows are more powerful with pluggable nanoflow actions — called JavaScript actions. With JavaScript actions, the standard set of actions can be extended with new functionality. A JavaScript action is a reusable action based on JavaScript that runs in the client just like the nanoflow, and can use capabilities such as HTML5 browser functions, Cordova plugins, and React Native modules. JavaScript actions are similar to [Java actions](/refguide10/java-actions/), but run on the client instead of the server. To share them inside your organization, JavaScript actions can be distributed and downloaded through the private [Mendix Marketplace](https://marketplace.mendix.com/).

This how-to teaches you how to do the following:

Expand Down Expand Up @@ -123,7 +123,7 @@ To create a JavaScript action that can synthesize text to speech, follow these s

{{< figure src="/attachments/howto10/extensibility/build-javascript-actions/write-javascript-actions/selectjsactioncalldetail.png" alt="select text to speech action" class="no-border" >}}

Optionally, you can expose the JavaScript action as a nanoflow action. When you do, you can choose a **Caption**, **Category**, and **Icon**. Note that to choose an icon your image will need to be included in an existing [image collection](/refguide/image-collection/).
Optionally, you can expose the JavaScript action as a nanoflow action. When you do, you can choose a **Caption**, **Category**, and **Icon**. Note that to choose an icon your image will need to be included in an existing [image collection](/refguide10/image-collection/).

{{< figure src="/attachments/howto10/extensibility/build-javascript-actions/write-javascript-actions/exposeasnanoflow.png" alt="add caption category and icon" class="no-border" >}}

Expand All @@ -140,9 +140,9 @@ To create a JavaScript action that can synthesize text to speech, follow these s

## Read More{#read-more}

* [Build JavaScript Actions: Part 2 (Advanced)](/howto/extensibility/write-javascript-github/)
* [Implement Best Practices for JavaScript Actions](/howto/extensibility/best-practices-javascript-actions/)
* [JavaScript Actions](/refguide/javascript-actions/)
* [Build JavaScript Actions: Part 2 (Advanced)](/howto10/extensibility/write-javascript-github/)
* [Implement Best Practices for JavaScript Actions](/howto10/extensibility/best-practices-javascript-actions/)
* [JavaScript Actions](/refguide10/javascript-actions/)
* [Mendix Client API](/apidocs-mxsdk/apidocs/client-api/)
* JavaScript Resources:
* [JavaScript basics](https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics)
Expand Down
Loading