Free desktop app for Laravel developers

See your entire Laravel architecture at a glance

LaraLens scans your Laravel project on your machine and turns it into an interactive graph. Browse routes, trace call chains, inspect models, and ask questions with OpenCode. Free, local, and no PHP runtime needed.

  • Scan locallyPoint at your Laravel folder. No cloud upload.
  • Explore the graphRoutes, controllers, models, and jobs in one map.
  • Ask OpenCodeChat about what you are viewing in the graph.

Stop grepping through files to trace a request. LaraLens parses your codebase statically and shows how routes, controllers, services, and models connect, so you understand the full picture in seconds.

Features

Built to map and navigate your Laravel codebase

LaraLens turns scattered PHP files into a living map, so you spend less time tracing requests and more time shipping features.

Interactive architecture graph

Explore route subgraphs with pan and zoom. Follow edges from controllers through services, models, jobs, and events.

Route browser

Browse routes as cards or a folder tree. Open any route to see its call chain, middleware, and connected nodes.

Model relationship view

ER-style view of Eloquent models, migration columns, and relationship edges like hasMany and belongsTo.

Inline code viewer

Jump from any graph node to its source file in a read-only viewer, sandboxed to your scanned project.

AI assistant via OpenCode

Chat about your project using your existing OpenCode install. Context-aware prompts from routes and nodes, with threads saved locally.

Deep static analysis

No PHP runtime required. Scanning runs in the desktop app via php-parser and fast-glob in the main process.

From route to model in a few clicks

Pick a route, follow the call chain through controllers and services, open the source inline, or switch to the model view to see how your data layer connects, all without leaving the app.

Example trace

  1. GET /api/billing/webhook
  2. StripeWebhookController
  3. BillingService::handle()
  4. Subscription
  5. ProcessPayment
Routes

Browse by URI or folder

Switch between card and tree views. Drill into api/, admin/, or any route group.

Models

Map Eloquent relationships

See models, columns from migrations, and relationship edges in a dedicated graph view.

Inspector

Inspect any node

Select a controller, service, or job to see incoming and outgoing edges with file paths.

How it works

Scan, visualize, and explore in three steps

No manual diagrams. Point LaraLens at your project and get an architecture map you can navigate immediately.

Scan

What you do…

Pick your Laravel project folder with the native directory picker. LaraLens runs entirely on your machine. No upload and no cloud account.

Select your project and hit Scan. Recent projects are saved locally for quick access.

Analyze

What LaraLens does…

Static parsers walk your codebase in dependency order and assemble a graph of routes, controllers, models, jobs, and more.

Routes, middleware, Eloquent, commands, schedules, and channels—rendered as one interactive map.

Explore

What you get…

An explorable map of your application. Browse routes, inspect nodes, open source files, or ask OpenCode about what you are viewing.

GET /billing → StripeWebhookController → BillingService → Subscription model → ProcessPayment job.

OpenCode

OpenCode integration

Context from the graph, answers from OpenCode

LaraLens does not replace OpenCode. It plugs into your existing install and sends prompts with the Laravel context you are already exploring in the graph.

How it works together

Ask about your Laravel project without leaving the graph

From detection through context-aware prompts, LaraLens keeps OpenCode scoped to the project you scanned and tied to what you are viewing.

  1. 1

    Use your existing install

    LaraLens detects the opencode CLI on your PATH. Your providers, models, and agents come from the OpenCode configuration you already use.

  2. 2

    Server starts when you scan

    After a successful project scan, LaraLens launches a local OpenCode server scoped to that project directory. Connection status stays visible in the toolbar.

  3. 3

    Ask with graph context

    Open the chat composer, toggle context-aware mode, and ask about the route, folder, or node you are viewing. LaraLens prepends that context automatically.

Context sent with each prompt

Route detail

GET /api/users → UserController@index

Selected node

UserService (service)

Route folder

/api/billing

  • [*] Laravel-aware quick promptsOne-click presets for project overview, route summaries, model relationships, entry points, and config audits.
  • [*] Threads that persist locallyConversations are saved in a local SQLite database per project. Rename threads or pick up where you left off.
  • [*] Your models and agentsChoose default model and agent from your OpenCode providers in Settings. No duplicate setup inside LaraLens.

What gets scanned

Everything LaraLens parses, just by pointing at your project

Built for real Laravel codebases: monoliths, APIs, and standard project structure. No configuration files to maintain.

RoutesControllersModelsMiddlewareJobs & EventsCommandsSchedulesChannelsProviders

No PHP runtime required

Static analysis via php-parser runs in Node.js. Your machine doesn't need PHP installed to scan a project.

Call-chain tracing

Follows method calls from controllers through services, repositories, jobs, events, views, and mail.

Migration-aware models

Model columns come from migration files, not just fillable arrays, so the ER view reflects your schema.

Privacy & philosophy

Your code stays on your machine. Always.

LaraLens is built for developers who care about ownership of their codebase and their tools. Completely free, forever.

Local-first by design

Your source code never leaves your machine. Scanning and graph building run in the Electron main process.

No accounts required

Download, scan, explore. No sign-up and no cloud dependency for core scanning features.

Sandboxed code viewer

The code viewer is read-only and restricted to files within your scanned project directory.

Works offline

Architecture scanning and graph exploration work without an internet connection. AI features require OpenCode setup.

FAQ

Have questions? Find answers

No. LaraLens uses static analysis with php-parser in Node.js. It reads your PHP files directly. No Laravel or PHP runtime is required to scan a project.

Yes, for the AI chat features. LaraLens detects the opencode CLI on your PATH and connects to it automatically when you scan a project. Core architecture scanning and graph exploration work without OpenCode.

After you scan a project, LaraLens starts a local OpenCode server scoped to that directory. The built-in chat composer sends prompts through OpenCode using your existing providers and models. You can toggle context-aware mode to include the route, folder, or graph node you are currently viewing.

Never. All scanning happens locally in the Electron main process. Your source code stays on your machine.

LaraLens targets modern Laravel applications with conventional structure: routes, controllers, Eloquent models, middleware, artisan commands, and standard PSR-4 autoloading.

Telescope and Debugbar instrument runtime requests. LaraLens maps your entire static architecture, every route, controller, model, and relationship, before you even hit an endpoint.

Yes. LaraLens is a personal open-source project and will remain completely free. No subscriptions, no feature gates.

Windows (NSIS installer), macOS (DMG and ZIP), and Linux (AppImage, deb, rpm). Downloads are distributed via GitHub Releases.

Still have questions? Open an issue on GitHub

Download

Start mapping your Laravel architecture today

Free, open source, and ready in minutes. Pick your platform and point LaraLens at your project.