Appsmith is an open-source builder for internal tools: widgets on a canvas, bound to queries on your existing databases and APIs, with JavaScript. Luna Park builds complete applications, internal or customer-facing, with their own backend and database, compiled to Vue and Node.js code.

- **Backend included.** Routes, crons, and PostgreSQL, built visually.
- **Any audience.** Customer apps with your design, users, and domain.
- **Visual logic.** Interface and backend logic built as graphs.

![Sunset Park in the Luna Park editor](https://luna-park.app/static/assets/builder-DAXbtfYB.png "Sunset Park, a demo site built with Luna Park: your own design, not a grid of widgets.")


## At a glance

Both build internal tools visually. The main differences: database, logic, and audience.

| | Luna Park | Appsmith |
|---|---|---|
| **Made for** | SaaS, portals, internal tools | Internal tools on existing data |
| **Interface** | Your own components, CSS, design tokens | Grid of ready-made widgets |
| **Logic** | Visual scripting graphs, front and back | JavaScript and queries |
| **Database** | [+Built-in] PostgreSQL | [~Bring your own] ([source](https://docs.appsmith.com/connect-data/reference)) |
| **Code export** | [+Vue + Node.js source] (Pro) | [~Appsmith JSON, Git] ([source](https://docs.appsmith.com/advanced-concepts/more/backup-restore)) |
| **Open source** | [-No] | [+Apache-2.0] Community edition ([source](https://github.com/appsmithorg/appsmith)) |
| **Hosting** | [+Anywhere] Managed hosting in late 2026 | [+Cloud or self-hosted] |
| **Pricing** | Free, or Pro at €25/month or €300 once | Free, then per user ([source](https://www.appsmith.com/pricing)) |

## Example: a waitlist form

Visitors enter their name, email, and favorite ride, and get a ticket number.

::: columns
### Luna Park

1. Place the fields and a button, in the site's design.
2. On click, a graph sends the fields to a backend route and shows the ticket.
3. The route inserts a row in the `Waitlist` table, in the project's own database.

---

### Appsmith

1. Connect a database, such as PostgreSQL.
2. Write an insert query that returns the id.
3. Run it from a form widget, and show the id.
4. Make the app public.
:::

::: gallery
![The click logic of the waitlist form](https://luna-park.app/static/assets/logic-C66duI84.png "On click: read the fields, call the route, show the ticket.")

![The Join Waitlist backend route](https://luna-park.app/static/assets/route-DQo3hM8a.png "The route: receive the body, insert a row, return its id.")
:::

## Code export

Appsmith exports apps as JSON or syncs them to Git, to run on Appsmith. Luna Park compiles every project to plain Vue and Node.js, with no Luna Park runtime.

![The waitlist component compiled to Vue](https://luna-park.app/static/assets/code-BUYWx0sG.png "The waitlist, compiled to Vue and TypeScript.")

## Other differences

- **Database.** Appsmith works on databases you already have. Luna Park brings its own [PostgreSQL](/docs/backend-data/database), [routes](/docs/backend-data/routes), and [crons](/docs/backend-data/cron).
- **Logic.** Appsmith logic is JavaScript and SQL. Luna Park logic is visual, front and back.
- **Customer-facing apps.** Luna Park builds products with your design, your [authentication](/docs/backend-data/auth), and your domain.

## Which one to choose?

::: columns
### Luna Park

- Your app needs its own backend and database.
- Your app is, or will be, customer-facing.
- You want visual logic and standard code.

---

### Appsmith

- You need admin panels on existing databases.
- Your team writes JavaScript and SQL.
- You want an Apache-2.0 tool you can self-host.
:::

## Before switching

- Luna Park is not open source.
- Until [managed hosting](/pricing) launches in late 2026, you [host the backend](/docs/deployment/deployment).

::: info
Based on Appsmith as of October 2026. See [appsmith.com](https://www.appsmith.com) for current features and prices.
:::
