Skip to content

update: update Fleet documentation #134

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 2 commits into from
May 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions mpd.tree
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,9 @@
<toc-element toc-title="Releases" href="https://github.com/JetBrains/compose-multiplatform/blob/master/CHANGELOG.md"/>
</toc-element>
<toc-element toc-title="Kotlin Multiplatform technology" href="https://kotlinlang.org/docs/multiplatform.html"/>
<toc-element toc-title="IDEs and tools">
<toc-element toc-title="Tooling">
<toc-element id="recommended-ides.md"/>
<toc-element id="fleet.md" toc-title="Fleet IDE"/>
<toc-element id="fleet.md" toc-title="Fleet code editor"/>
<toc-element id="amper.md" toc-title="Amper configuration tool"/>
</toc-element>
<toc-element toc-title="Multiplatform Gradle DSL reference" href="https://kotlinlang.org/docs/multiplatform-dsl-reference.html"/>
Expand Down
8 changes: 4 additions & 4 deletions topics/overview/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ about [supported platforms](supported-platforms.md).

### In which IDE should I work on my cross-platform app?

We recommend using JetBrains Fleet or Android Studio, depending on your project needs and expectations.
Learn more about which one to choose in [Recommended IDEs](recommended-ides.md).
We recommend using JetBrains Fleet code editor or Android Studio IDE, depending on your project needs and expectations.
Learn more about which one to choose in [Recommended IDEs and code editors](recommended-ides.md).

### How do I create a new Kotlin Multiplatform project?

Expand Down Expand Up @@ -135,11 +135,11 @@ Developer Advocate Sebastian Aigner.

### What IDE should I use for building apps with Compose Multiplatform?

We recommend using JetBrains Fleet or Android Studio, depending on your project needs and expectations. To try
We recommend using JetBrains Fleet code editor or Android Studio IDE, depending on your project needs and expectations. To try
a new multiplatform experience without juggling different IDEs and switching to Xcode for writing Swift code,
try out [JetBrains Fleet tutorial](fleet.md).

For more details on which one to choose, see [Recommended IDEs](recommended-ides.md).
For more details on which one to choose, see [Recommended IDEs and code editors](recommended-ides.md).

### Can I play with a demo application? Where can I find it?

Expand Down
25 changes: 13 additions & 12 deletions topics/tools/fleet.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@
This article shows the basics of working with Kotlin Multiplatform projects
in [JetBrains Fleet](https://www.jetbrains.com/fleet/).

Fleet is a modern IDE designed for collaborative development. It strives to provide a superior experience for
Kotlin Multiplatform. As the first step, Fleet brings Kotlin Multiplatform to macOS.
Fleet is a code editor for any language that can transform into a powerful development tool for any language.
It strives to provide a superior experience for Kotlin Multiplatform.
As the first step, Fleet brings Kotlin Multiplatform to macOS.

With Fleet, you can quickly open and run multiplatform projects targeting Android, iOS, and desktop platforms.
Fleet's Smart Mode selects the appropriate code-processing engine.
With Fleet, you can quickly open and run multiplatform projects targeting Android, iOS, web, and desktop platforms.
Fleet's Smart Mode automatically selects the appropriate code-processing engine.

When targeting iOS, navigation, refactoring, and debugging are all available across languages used in the project. This
makes it easier to manage a mixed-language codebase. Fleet has full support for Swift, so you can easily extend and
maintain the native parts of your application as well.
When targeting iOS, navigation, refactoring, and debugging are available across all languages used in the project.
This makes it easier to manage a mixed-language codebase.
Fleet fully supports Swift out of the box, so you can extend and maintain the native parts of your application.

## Prepare your development environment

Expand Down Expand Up @@ -83,9 +84,9 @@ In this tutorial, you'll create a new project with the web wizard:

At the top of the window, you'll see messages from Fleet as the project is imported and indexed.

When Smart Mode is enabled, Fleet operates as an IDE, with all of the code completion, navigation, debugging, and
refactoring features available. When it's disabled, Fleet works as a simple file editor. You can quickly open files and
make changes, but most of the productivity features won't be available.
When Smart Mode is enabled, Fleet offers language-related features such as code completion,
navigation, debugging, and refactoring. When Smart Mode is disabled, Fleet works as a simple code editor.
You can quickly open files and make changes, but without most of the advanced language-related features.

Under the hood, Fleet chooses which backend to use to process code. When Smart Mode is enabled, the backend for
Kotlin is the same code-processing engine used by IntelliJ IDEA, so the functionality you might be already familiar with
Expand Down Expand Up @@ -126,7 +127,7 @@ the [Get started with the Compose Multiplatform](compose-multiplatform-explore-c
Let's see how cross-language navigation works in Fleet using the example of navigating from Kotlin to Swift:

1. Open the `composeApp/src/commonMain/kotlin/App.kt` file. Here's the `App` composable, the center of the sample code.
2. Select the `App()` function and run the **Usages** action form the context menu or with the <shortcut>⌘ U</shortcut>
2. Select the `App()` function and run the **Usages** action from the context menu or with the <shortcut>⌘ U</shortcut>
shortcut. You can see it is invoked in three files:

![Function show usages](fleet-show-usages.png){width=700}
Expand All @@ -145,7 +146,7 @@ Let's see how cross-language navigation works in Fleet using the example of navi

Since the `ContentView.swift` file is already open, you can explore Fleet support for editing Swift code:

1. Add a new function to the `ComposeView` type. Fleet will provide all of the expected coding assistance:
1. Add a new function to the `ComposeView` type. Fleet will provide all the expected coding assistance:

```swift
struct ComposeView: UIViewControllerRepresentable {
Expand Down
21 changes: 13 additions & 8 deletions topics/tools/recommended-ides.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,31 @@
[//]: # (title: Recommended IDEs)
[//]: # (title: Recommended IDEs and code editors)

## Fleet
## JetBrains Fleet code editor

If you want the best Kotlin Multiplatform development experience, we recommend using [JetBrains Fleet](https://www.jetbrains.com/fleet/).
For the best Kotlin Multiplatform development experience, we recommend using [JetBrains Fleet](https://www.jetbrains.com/fleet/).
Fleet is a code editor for any language that can transform into a more powerful tool for development.
It is designed to be smart and focused on core development workflows (the edit-build-run loop),
AI-capable, and ready for remote development and collaboration.

It supports testing and debugging your code on all of the platforms your project targets. You can also navigate between Kotlin
Fleet supports testing and debugging your code on all target platforms. You can also navigate between Kotlin
Multiplatform code and code written in other languages interoperable with Kotlin.

See the [Use Fleet for Multiplatform development](fleet.md) tutorial to get started.

Kotlin Multiplatform support in Fleet is still in the early stages of development. You may face issues and
limitations, but we're committed to fixing them based on [your feedback](fleet.md#leave-feedback).
> Kotlin Multiplatform support in Fleet is still in the early stages of development. You may face issues and
> limitations, but we're committed to fixing them based on [your feedback](fleet.md#leave-feedback).
>
{type="note"}

## Android Studio
## Android Studio IDE

As a more stable solution, you can use [Android Studio](https://developer.android.com/studio),
although its support for Kotlin Multiplatform is limited.

With Android Studio, you can also install a [special plugin](https://plugins.jetbrains.com/plugin/14936-kotlin-multiplatform-mobile)
that provides minimal launching and debugging capabilities for iOS apps.

## Other IDEs
## Other IDEs and code editors

If basic Kotlin Multiplatform support is enough for you, you can use any IDE that supports Kotlin, including [IntelliJ IDEA](https://www.jetbrains.com/idea/).
It supports opening, browsing, and building multiplatform projects.
Expand Down
4 changes: 2 additions & 2 deletions topics/whats-new/whats-new-fleet-1-31.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,14 @@ Currently, Fleet does not rebuild previews automatically, so click the icon agai
{type="note"}

For more about the feature, see [Getting started with Kotlin Multiplatform](https://www.jetbrains.com/help/fleet/getting-started-with-kotlin-multiplatform.html#b65b852e_76)
in Fleet documentation.
in the Fleet documentation.

## Support for Compose Multiplatform resources API

The latest version of the [images and resources access API](compose-images-resources.md), revamped in Compose Multiplatform 1.6.0,
is supported in Fleet.

The IDE:
Starting with this version, JetBrains Fleet:

* Autocompletes resources calls
* Allows navigation to resources referenced in code
Expand Down