A language server for SystemVerilog providing linting and IDE integration.
svls is a language server implementation for the SystemVerilog hardware description language. It enhances the development workflow by providing real-time linting, code analysis, and editor integration for SystemVerilog projects.
Hardware design and verification engineers working with SystemVerilog who use code editors like VS Code, Vim/Neovim, Emacs, or Helix.
Developers choose svls for its robust, standards-compliant language server features, including integrated linting via svlint, configurable rules, and broad editor support through the Language Server Protocol.
SystemVerilog language server
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages svlint for real-time code quality checks, providing immediate feedback on violations as configured in .svlint.toml files.
Compatible with VS Code, Vim/Neovim, Emacs, and Helix via the Language Server Protocol, with detailed setup instructions provided in the README.
Supports project-specific rules through .svls.toml and .svlint.toml files, and allows custom plugins to extend linting capabilities for specialized needs.
Focuses primarily on linting and lacks advanced language server features such as comprehensive code completion, hover documentation, or refactoring tools, as it depends on svlint.
Requires manual setup of multiple TOML files and understanding of svlint rules, which can be daunting for new users or in large projects with complex dependencies.
Heavily reliant on svlint for core functionality; any limitations or bugs in svlint directly impact svls, and the plugin system may require additional development effort.