Skip to main content

pegon

Fast Java language server

Features

  • Zero-hassle configuration.
  • High editor performance.
  • Adherence to the Language Server Protocol standard.
  • CLI diagnostics for linting in CI/precommit.
  • Small standalone binary with no external dependencies.

Install

Github Releases

Binaries are available on the Releases Page.

PyPI

Binaries are available on PyPI.

Use uvx to run a one-off lint check on your Java code:

uvx pegon check

Or install with uv or pip:

# with uv
uv tool install pegon@latest
# with pip
pip install pegon

Install from Source

cargo install pegon

Editor Setup

Neovim

~/.config/nvim/lsp/pegon.lua:

--- @type vim.lsp.Config
return {
  cmd = { 'pegon', 'server' },
  filetypes = { 'java' },
  root_markers = { '.git' },
}

~/.config/nvim/init.lua:

vim.lsp.enable({ 'pegon' })

VSCode

Install rmuir.pegon-vscode from the marketplace.

VSCodium, Cursor, etc

Install rmuir.pegon-vscode from Open VSX.

Docs

FAQ

Q. This code looks like AI slop!

A. No LLM was used: if the code looks bad, it is because I wrote this application to learn Rust.

Q. What's with the Google Style?

A. Google Style supports high-performance Java development, and most developers roughly follow it:

  • Single top-level class with matching .java name supports search, fuzzy-finder
  • Variable naming conventions support easier code review and understanding
  • Import restrictions (e.g. no wildcards) support efficient analysis

Q. Where's completion / go-to-definition? I can't live without it!

A. These features are coming, continue to use ctags for now.

Q. What about running tests from my editor? This is essential for TDD!

A. I strongly recommend vim-test for this.

If your java build uses gradle, the daemon allows for very fast iteration with no config hassle. Black magic.

Q. Where's XYZ fancy refactoring? I can't live without it!

A. Currently the code actions are minimal. Check out some alternatives for now:

Q. What's with the name?

A. This program is named after the Javanese writing system. (ڤَيڮَون)

Thanks

Special thanks to the open-source maintainers of the dependencies used.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pegon-1.0.10.tar.gz (108.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pegon-1.0.10-py3-none-win_arm64.whl (1.5 MB view details)

Uploaded Python 3Windows ARM64

pegon-1.0.10-py3-none-win_amd64.whl (1.6 MB view details)

Uploaded Python 3Windows x86-64

pegon-1.0.10-py3-none-win32.whl (1.6 MB view details)

Uploaded Python 3Windows x86

pegon-1.0.10-py3-none-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pegon-1.0.10-py3-none-musllinux_1_2_i686.whl (1.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

pegon-1.0.10-py3-none-musllinux_1_2_armv7l.whl (1.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

pegon-1.0.10-py3-none-musllinux_1_2_aarch64.whl (1.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pegon-1.0.10-py3-none-manylinux_2_28_x86_64.whl (1.8 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

pegon-1.0.10-py3-none-manylinux_2_28_s390x.whl (1.8 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ s390x

pegon-1.0.10-py3-none-manylinux_2_28_ppc64le.whl (1.8 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ppc64le

pegon-1.0.10-py3-none-manylinux_2_28_i686.whl (1.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ i686

pegon-1.0.10-py3-none-manylinux_2_28_armv7l.whl (1.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARMv7l

pegon-1.0.10-py3-none-manylinux_2_28_aarch64.whl (1.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

pegon-1.0.10-py3-none-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pegon-1.0.10-py3-none-macosx_10_12_x86_64.whl (1.7 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file pegon-1.0.10.tar.gz.

File metadata

  • Download URL: pegon-1.0.10.tar.gz
  • Upload date:
  • Size: 108.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10.tar.gz
Algorithm Hash digest
SHA256 41577df5ac33ef3e687c40aba0cebc370d76869d3eb773360fcc3b258b77f241
MD5 10891adf8f7908867143757078e53505
BLAKE2b-256 f122f7774338cd534be6ef309ce6e15f7f9c843413deeb167e00ae4ca0c95309

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-win_arm64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-win_arm64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 a61949de5fc5226719ce1603d2dcf87a6e8573dc1e38ad482952efba36e4b9eb
MD5 15f2d1823591bd7b98c8ab823f5d7ebf
BLAKE2b-256 748f4b77cba0e47589ffe6cfba6ec337d9e8d6475956facfa616dc5bd1d54803

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-win_amd64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 5f9d90e7253c79fd894efe7bf0570f5eb8cc499a754541d7eaaa94aaaa6231d3
MD5 6fe9415b7e782fa27d79bdae10609c22
BLAKE2b-256 18a3c714256e178a999343a723b966b60a19ffa71af68effa67c767958071d9c

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-win32.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-win32.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-win32.whl
Algorithm Hash digest
SHA256 12c020e35eeac81017c4658dece09285afa27b1b9977026923db3762021d8d08
MD5 1680712b62e62fcde9d04464a055978a
BLAKE2b-256 4b55c04ce65f10053f32c408fa79d4aac347db2694a8cd8e05840a9e6364fe24

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d236fac0e81395a2f5b09b0e1f609cbfa2158a88d8e0770cbae72a235e48b9c0
MD5 7a9c057e2c1abde3a870befad461b489
BLAKE2b-256 8fb5d76dd5287b3941c9eee8bac587712bd8e4c133fe7e520be5cca1f20f1944

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 d663ac85c11f418cc3eaf2fe9b981171b7bd7e1e1f4b42b6c2ab3c48ec03ad04
MD5 87065f38b64fb9b11fef254946be1eef
BLAKE2b-256 d581a5bfced6ee54eefc81c34e5f0d4dcac32ebdabb444edfe7b27ea53a4f43b

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0e6b754998bf2dad43ee053110fcaa18c4a82ed782223883a4859f93b7cff3b6
MD5 889cefe4d3b37c4b5377b9a360c61fe8
BLAKE2b-256 a93ab685cf2dfeaf9bf5570ee0e7c619fa6f5f1798e23642f385e7f7e802801a

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fcd397f91c98ec7fde7836ee3d0010072d3574332d284a7e7d61fb126f71db0b
MD5 98c8c31dd3c2f72f6ff22712bb2ef342
BLAKE2b-256 c34993740bc3b0255b72adaa85a56d576cbca28e7c4cd873cef4c1dc562b72eb

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0442d3f662e21481d7245ceb05dccc197670417d0ddb1d4a70edfbcfdca46e1e
MD5 061b16fb407190b092d59815a131ecd9
BLAKE2b-256 adec2060a62c7632132655cb5597a7caa5781138d68e473740cee8794e5235c7

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_s390x.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_s390x.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, manylinux: glibc 2.28+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 3d6ab76e5c8dded25f946c2161305b72486f0802f9ff9dc4e1a4ad4443b29cb6
MD5 79398dc18461a725993dec331c72a06e
BLAKE2b-256 e4728f6d2f99edfdbca7308240e15a992385cb4013e0b0120f2e9a15243ab3a5

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_ppc64le.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_ppc64le.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 eeb96457d2c2ab758408e27986904486932092bac10adf1b3e27534a1cc40da6
MD5 3ba183238e8e307b4c21481869b01d0f
BLAKE2b-256 836a0219b7a5b29e3dc18cd253ec33048dff682bd9b13bce6ee938853adf42cd

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_i686.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_i686.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3, manylinux: glibc 2.28+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_i686.whl
Algorithm Hash digest
SHA256 223a8347c2fe3e911b76b67f0e7ea5afd3b032f877bd7e284dbccc91e4b4ea20
MD5 04a746eb5cd785367bbbb988c40e1878
BLAKE2b-256 d42a8f2aedf5b7ea34f25fb13b4db7382b8f54e63c16a42f440da5b1f4c31bf7

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_armv7l.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_armv7l.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_armv7l.whl
Algorithm Hash digest
SHA256 ef3c1d4d448dfe912bbd5e670d4d657792d866fefa50b2675f5ecd6d9b681601
MD5 9155227dfa1b38e8917929658f872cad
BLAKE2b-256 42f8f72882caaef2023bee7c143816198d826649b5349a61e0b861387a453f44

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5b5896b12c793ba180f06eae386f6a3990a8291fb8cc27f07c8caae5e534534b
MD5 765945eb1cd8c01657243895f2e0d2ac
BLAKE2b-256 7409ce98873441cdd43340efac71ddf09f3e881d031a2670c073031023718d94

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1f3fa3ba0659ef3ffd31839349c0e0c560c5a56091ac644e899a5a19c7fc4b5c
MD5 6f7df36c99165d0af590616403f63b0a
BLAKE2b-256 723802f1c0e188446c487bbec1b5ca9b73166be805f5df67c5db2a52c308805b

See more details on using hashes here.

File details

Details for the file pegon-1.0.10-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: pegon-1.0.10-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pegon-1.0.10-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 50bbda7583f64e193c06f08b732cc27da617ca0c13ca9025f9f66a3f1ee8c96c
MD5 7f8ac2798d73f3e16c8f21f8c7976275
BLAKE2b-256 6afaa13cb1fd5992cacc84506b6730195608c0ce0fa6db4d9db3d1f7392b2eb2

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.11

16 files

This release

1.0.10 This release

16 files

1.0.9

16 files

1.0.8

16 files

1.0.7

16 files

1.0.6

16 files

1.0.5

16 files

1.0.4

16 files

1.0.3

16 files

1.0.2

16 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page