// features

A workbench for the Laravel work you repeat.

LaraBench helps you run code against real Laravel apps, understand what happened, and save the snippets and commands you reuse. It is a desktop app for the small debugging and operations moments that usually send you bouncing between Tinker, SSH, logs, and notes.

// what it covers

  • Run code against real Laravel apps
  • Keep reusable snippets, commands, and history
  • Read output, queries, logs, and benchmark results in one place
  • Fill in {placeholder} templates, or batch-run them across value lists

Placeholder templates

Put {placeholders} in a Tinker snippet or Artisan command. Run Code prompts for the values and substitutes them before running, so one saved template covers a whole family of one-off checks. Free.

Batch Runs (Premium)

Run a template across named value lists like id: 1,2,3 and name: a,b,c. Each row runs in sequence with its own status, duration, and output, and you can stop after the current row, retry incomplete rows, and export the table as CSV, Markdown, or JSON.

Laravel-aware editing

The editor uses Monaco with PHP intelligence and generated Laravel stubs, so common facades, helpers, Eloquent models, and project symbols autocomplete as you write snippets.

Runs with timing

Every run records duration and exit state, so quick checks, failed commands, and slow snippets are easier to understand after the fact.

Local-first by default

Connections, snippets, commands, and history live on your machine. Nothing is uploaded, and you never need an account to run code.

// feature tour

Everything the app does.

run code

Run Tinker snippets and Artisan commands in one place.

Write a Laravel snippet, choose a saved connection, and run it through the app it belongs to. Switch to Artisan mode when you need a normal command instead. The result shows the connection, exit code, duration, and output without making you jump back to a terminal.

  • Tinker and Artisan modes
  • Run the whole snippet or selected lines
  • Cmd+Enter workflow for fast repeat runs

connections

Connect to local projects, Docker containers, and SSH servers.

Save the places where your Laravel apps actually run: a local folder, a Laradock or Sail-style container, or a remote server over SSH. Each connection keeps its app path and environment label, so you can tell local, staging, and production apart before you run anything.

  • Local Laravel project connections
  • Docker exec connections for containerized apps
  • SSH connections that can be reused for repeat runs

clean output

Turn raw dumps into output you can scan.

LaraBench renders common Laravel output as cards, tables, and expandable trees. Eloquent models become readable attribute cards, collections become tables, nested arrays stay explorable, and the raw text remains close by when you need it.

  • Model cards for Eloquent attributes
  • Tables for collections and list-shaped JSON
  • Expandable trees for nested values

sql queries

See the SQL your snippet ran.

When a snippet touches the database, LaraBench shows the executed queries beside the output. You can inspect bindings, timing, and connection details without adding temporary logging to your code.

  • Query text with bindings
  • Timing for each query
  • Connection metadata for each query

query analysis

Spot duplicate queries and N+1 patterns without reading every query.

A run that fires fifty queries is hard to read one card at a time. LaraBench groups them for you: identical queries that ran more than once, query shapes that repeat with different arguments, and queries that took a meaningful share of the run. The Queries panel flags what it found, and the full breakdown opens in one click.

  • Duplicate queries grouped with a repeat count
  • Possible N+1 patterns named by table
  • Slow queries ranked by share of total time

benchmark

Compare two Laravel approaches before you pick one.

Benchmark mode runs snippets repeatedly, supports warmups, and lets you compare two versions side by side. It is built for the everyday questions Laravel developers ask: which query shape is faster, which collection approach costs less, and whether an optimization changed anything.

  • Warmups and repeated runs
  • Hot and cold session modes
  • Outlier inspection and trimming

tabs

Keep several snippets open at once.

Tabs keep multiple snippets, commands, and experiments open side by side. Each tab remembers its own mode, content, connection, and output, so checking one idea does not overwrite another.

  • Multiple open runner tabs
  • Per-tab mode and output state
  • Useful for comparing fixes, queries, and commands

saved work

Save the snippets and commands you reach for again.

Turn useful snippets and Artisan commands into a small personal toolkit. Save them locally, load them back into the runner, and reuse them the next time the same production question or cleanup task comes around.

  • Saved Tinker snippets
  • Saved Artisan commands
  • Stored locally on your machine

history

Find the thing you ran last week.

Every run is kept in local history with its project context. Filter by project, reopen a past run, or save it as a reusable snippet when it turns out to be useful.

  • Local run history
  • Project filtering
  • Reopen or save past runs

logs

Read Laravel logs without leaving the app.

Open the logs for the selected connection, filter by level, and search for the thing you are chasing. It keeps the debugging loop in one window: run the snippet, inspect the result, then check the log.

  • Laravel log viewer
  • Level filters and search
  • Works with the selected connection

safety

Make production runs deliberate.

LaraBench keeps the environment visible and asks for confirmation before production runs. If code looks like it may modify data, the warning gets stronger. Dry-run controls can roll back writes, avoid persisting inserts, updates, or deletes, and block schema changes.

  • Production badges and confirmation
  • Write detection before risky runs
  • Dry-run and selective non-persistence controls

mcp server

Let Claude, Codex, or Cursor work in your Laravel app.

LaraBench can act as an MCP server, so an AI coding tool can see your connections, saved library, run history, and logs, and run Tinker snippets or Artisan commands in the real app context, without you copying anything back and forth. Reading is free on any plan; running code and saving to your library need Premium.

  • One click to connect Claude Code, Claude Desktop, Codex, or Cursor
  • Production hidden until you opt it in, dry run everywhere else by default
  • Every AI-driven run recorded in History with an AI badge

projects cockpit

See which packages in a project have moved on.

Pick a local Laravel project and LaraBench reads its Composer and npm lockfiles, then tells you what is behind: major updates, minor updates, up to date, and packages it does not track. Click any package to read the release notes between your version and the latest, without opening a browser.

  • Composer and npm lockfiles, read from the project you pick
  • Counted by major, minor, up to date, and not tracked
  • Release notes for every version between yours and the latest

Try LaraBench on one Laravel project.

Download LaraBench, add a local project, Docker container, or SSH server, and run the first snippet against the app you already have.

latest release v1.0.12 · free · no account required