# rpk generate app

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [cloud-data-platform-full.txt](https://docs.redpanda.com/cloud-data-platform-full.txt)

---
title: rpk generate app
latest-operator-version: v26.2.1
latest-console-tag: v3.10.0
latest-connect-version: 4.105.0
latest-redpanda-tag: v26.2.1
docname: rpk/rpk-generate/rpk-generate-app
page-component-name: cloud-data-platform
page-version: master
page-component-version: master
page-component-title: Cloud
page-relative-src-path: rpk/rpk-generate/rpk-generate-app.adoc
page-edit-url: https://github.com/redpanda-data/cloud-docs/edit/main/modules/reference/pages/rpk/rpk-generate/rpk-generate-app.adoc
description: Generate a sample application to connect with Redpanda. This command generates a starter application to produce and consume from the settings defined in the rpk profile.
page-git-created-date: "2024-07-25"
page-git-modified-date: "2026-08-11"
---

<!-- Source: https://docs.redpanda.com/cloud-data-platform/reference/rpk/rpk-generate/rpk-generate-app.md -->

Generate a sample application to connect with Redpanda.

This command generates a starter application to produce and consume from the settings defined in the rpk profile. Its goal is to get you producing and consuming quickly with Redpanda in a language that is familiar to you.

By default, this will run interactively, prompting you to select a language and a user with which to create your application. To use this without interactivity, specify how you would like your application to be created using flags.

The `--language` option allows you to specify the language. The default is `go`. Available language: `go`.

The `--new-sasl-credentials` <user>:<password> allows you to generate a new SASL user with admin ACLs. If you don’t want to use your current profile user nor create a new one, you may use `--no-user` flag to generate the starter app without the user.

If you are having trouble connecting to your cluster, you can use `-X` admin.hosts=comma,`delimited`,host:ports to pass a specific admin api address.

> 📝 **NOTE**
>
> This command is only supported in Serverless clusters.

## [](#usage)Usage

```bash
rpk generate app [flags]
```

## [](#examples)Examples

This section provides examples of how to use `rpk generate app`.

Generate an app with interactive prompts:

```bash
rpk generate app
```

Generate an app in a specified language with the existing SASL user:

```bash
rpk generate app --language <lang>
```

Generate an app in the specified language with a new SASL user:

```bash
rpk generate app -l <lang> --new-sasl-credentials <user>:<password>
```

Generate an app in the `tmp` dir, but take no action on the user:

```bash
rpk generate app -l <lang> --no-user --output /tmp
```

## [](#flags)Flags

| Value | Type | Description |
| --- | --- | --- |
| -l, --language | string | The language for the generated code sample (go, python, java, js, rust). |
| --new-sasl-credentials | string | If provided, rpk will generate and use these credentials (<user>:<password>). |
| --no-user | bool | Generates the sample app without SASL user. |
| -o, --output | string | The path where the app will be written. |

## [](#global-flags)Global flags

| Value | Type | Description |
| --- | --- | --- |
| --config | string | Redpanda or rpk config file; default search paths are ~/.config/rpk/rpk.yaml, $PWD/redpanda.yaml, and /etc/redpanda/redpanda.yaml. |
| -X, --config-opt | stringArray | Override rpk configuration settings; -X help for detail or -X list for terser detail. |
| --ignore-profile | bool | Ignore rpk.yaml and redpanda.yaml; use default settings. |
| --profile | string | rpk profile to use. |
| -v, --verbose | bool | Enable verbose logging. |