Erlang Language Platform. LSP server and CLI. https://whatsapp.github.io/erlang-language-platform/
Find a file
Roberto Aloi e345a1b27c Test path
2024-05-14 16:16:09 +02:00
.cargo Initial commit 2023-08-02 07:54:59 -07:00
.github Test path 2024-05-14 16:16:09 +02:00
.vscode Initial commit 2023-08-02 07:54:59 -07:00
bench_runner Initial commit 2023-08-02 07:54:59 -07:00
crates more precise handling of maps:remove 2024-05-10 07:24:10 -07:00
docs Move Code Actions docs to the site 2023-08-31 11:41:19 -07:00
editors/code Bump VS Code extension version to 0.23 for imminent release 2024-04-26 03:41:47 -07:00
elisp Initial commit 2023-08-02 07:54:59 -07:00
erlang_service Import epp_dodger from OTP 27 in Erlang Service 2024-04-30 09:54:06 -07:00
logo Add logo to README 2023-08-03 01:29:02 -07:00
test_projects BE: fix flaky test 2024-05-09 02:17:59 -07:00
website Fix W0017 documentation 2024-04-22 02:36:17 -07:00
xtask BE: Apply some clippy fixes 2023-08-17 01:44:25 -07:00
.gitignore Some minor bpaf fixes (#4) 2023-08-03 08:12:55 -07:00
Cargo.lock Performance optimizations for project-wide eqwalization 2024-04-02 11:24:53 -07:00
Cargo.toml Back out "Move erlang_service to use unix domain socket for communication" 2024-03-28 03:13:52 -07:00
CODE_OF_CONDUCT.md Initial commit 2023-08-02 07:54:59 -07:00
CONTRIBUTING.md Add instructions on how to install ELP from source 2024-02-19 04:32:00 -08:00
FAQ.md Fix typo in FAQ (#2) 2023-08-03 04:26:33 -07:00
LICENSE-APACHE Initial commit 2023-08-02 07:54:59 -07:00
LICENSE-MIT Initial commit 2023-08-02 07:54:59 -07:00
README.md Remove duplicated info from README, point to Documentation instead 2024-02-14 10:29:29 -08:00
rustfmt.toml Initial commit 2023-08-02 07:54:59 -07:00

Erlang Language Platform (ELP)

ELP logo

Description

Designed at WhatsApp and inspired by the success of the Rust Analyzer project, ELP provides a scalable, fully incremental, IDE-first library for the semantic analysis of Erlang code.

ELP includes a fully fledged LSP language server for the Erlang programming language, providing advanced features such as go-to-definition, find references, call hierarchy and more for your IDE of choice.

ELP is easily extensible and provides a convenient API to implement linters and refactoring tools for Erlang.

Terms of Use

You are free to copy, modify, and distribute ELP with attribution under the terms of the Apache-2.0 and MIT licences. See LICENCE-APACHE and LICENCE-MIT for details.

Get Started

Please refer to the official documentation to get started on your favourite text editor and to learn how to configure your projects to use ELP.

References

Contributing

  • CONTRIBUTING.md: Provides an overview of how to contribute changes to ELP (e.g., diffs, testing, etc)

FAQ

Please refer to the FAQ document for answers to some common questions, including:

  • What's the difference between ELP and Erlang LS?
  • Why not extend Erlang LS, rather than creating a new tool?
  • Why is ELP implemented in Rust, rather than Erlang?

License

erlang-language-platform is dual-licensed