Skip to main content

craft-ls

GitHub Actions Workflow Status

Get on
PyPI - Version FlakeHub Snap - Version VSCode Marketplace

craft-ls is a Language Server Protocol implementation for *craft1 tools.

craft-ls enables editors that support the LSP to get quality of life improvements while working on *craft configuration files.

Features

Feature Snapcraft Rockcraft Charmcraft1
Diagnostics
Documentation on hover
Symbols
Autocompletion

https://github.com/user-attachments/assets/e4b831b5-dcac-4efd-aabb-d3040899b52b

Usage

Installation

Using uv or pipx

uv tool install craft-ls

pipx install craft-ls

Setup

Helix

# languages.toml
[[language]]
name = "yaml"
language-servers = ["craft-ls"]

[language-server.craft-ls]
command = "craft-ls"

VSCode

The VSCode extension can be installed from the marketplace. It requires a Python 3.12 interpreter. If not automatically picked, you may configure it using the following key:

"craft-ls.interpreter": [
  "/usr/bin/python3.12"
]

TBD: neovim

Roadmap

Project availability:

  • Python package
  • Snap
  • Nix flake
  • VSCode extension

Features:

  • Diagnostics
  • Autocompletion on typing
  • Symbol documentation

Ecosystem:

  • Encourage *craft tools to refine their JSONSchemas even further
  1. snapcraft, rockcraft and partial support for charmcraft (all-in-one charmcraft.yaml only) 2

Download files

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

Source Distribution

craft_ls-0.4.2.tar.gz (75.0 kB view details)

Uploaded Source

Built Distribution

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

craft_ls-0.4.2-py3-none-any.whl (41.2 kB view details)

Uploaded Python 3

File details

Details for the file craft_ls-0.4.2.tar.gz.

File metadata

  • Download URL: craft_ls-0.4.2.tar.gz
  • Upload date:
  • Size: 75.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for craft_ls-0.4.2.tar.gz
Algorithm Hash digest
SHA256 e471257fb150d9feaf43e90771c9ae846d2e093ab6d9b2a747f51dd344d21011
MD5 9dcf18fda34f357f75eff9e925277bb3
BLAKE2b-256 28635e772f5d7ee15b637a58fea31a63a6b113d531e48fe3109d875b877cda1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for craft_ls-0.4.2.tar.gz:

Publisher: release.yaml on Batalex/craft-ls

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file craft_ls-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: craft_ls-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 41.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for craft_ls-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 12211a67beb900b0d47a33cd06d7233b0a2523325bcc8cf0f10cf808f7f02816
MD5 6ffca8968f2c52d4527caf12e71e0d28
BLAKE2b-256 65baa4309bef0e4de1f828d17c5d1941552cab3f3e07eab87a22391ac6aa2b86

See more details on using hashes here.

Provenance

The following attestation bundles were made for craft_ls-0.4.2-py3-none-any.whl:

Publisher: release.yaml on Batalex/craft-ls

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.4.2 This release

2 files

0.4.1

2 files

0.4.0

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page