Skip to content

Add PHPantom language server#128

Open
roxblnfk wants to merge 1 commit into
zed-extensions:mainfrom
roxblnfk:add-phpantom-language-server
Open

Add PHPantom language server#128
roxblnfk wants to merge 1 commit into
zed-extensions:mainfrom
roxblnfk:add-phpantom-language-server

Conversation

@roxblnfk

@roxblnfk roxblnfk commented Jul 2, 2026

Copy link
Copy Markdown

Closes #125.

Adds PHPantom — a fast, Rust-based PHP language server as a fourth selectable language server alongside PhpTools, Intelephense and Phpactor.

What's added

  • A new phpantom language server entry in extension.toml.
  • An adapter (src/language_servers/phpantom.rs) that resolves the phpantom_lsp binary, in order: a user-provided lsp.phpantom.binary.path override → phpantom_lsp on the worktree PATH → a cached download → the matching GitHub release asset (apple-darwin/unknown-linux-gnutar.gz, pc-windows-msvczip; aarch64/x86_64).

The download logic mirrors the standalone PHPantom Zed extension by @AJenbo; the binary.path override is the one addition, so users can point at their own build on platforms without a prebuilt release asset.

Usage

{
  "languages": {
    "PHP": {
      "language_servers": ["phpantom", "!phptools", "!intelephense", "!phpactor", "..."]
    }
  }
}

Register PHPantom (https://github.com/AJenbo/phpantom_lsp), a fast
Rust-based PHP language server with out-of-the-box Laravel support, as
a fourth selectable language server alongside PhpTools, Intelephense and
Phpactor. Closes zed-extensions#125.

The adapter resolves the `phpantom_lsp` binary from the worktree PATH, a
downloaded GitHub release matching the current platform/arch, or a
user-provided `lsp.phpantom.binary.path` override, mirroring the
standalone PHPantom Zed extension by Anders Jenbo.
@cla-bot cla-bot Bot added the cla-signed label Jul 2, 2026
@samdark

samdark commented Jul 2, 2026

Copy link
Copy Markdown

That's the best language server available right now for PHP. Using it daily with Zed.

use zed_extension_api::settings::LspSettings;
use zed_extension_api::{self as zed, LanguageServerId, Result};

const REPO: &str = "AJenbo/phpantom_lsp";

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@roxblnfk phpantom repository is now at PHPantom-dev/phpantom_lsp

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Please Consider Adding PHPantom as a Language Server

3 participants