A SPARQL language server
Find a file
2025-06-12 13:29:51 +02:00
.cargo update getrandom to 0.3 2025-05-08 13:57:53 +02:00
.github/workflows Update actions/checkout action to v4 (#52) 2025-04-29 13:26:48 +02:00
crates/parser Update Rust crate syn to v2.0.102 (#141) 2025-06-10 20:18:39 +02:00
docs DOC: fix links on index page 2025-06-12 01:39:23 +02:00
editor Update tailwindcss monorepo to v4.1.10 (#146) 2025-06-12 09:23:31 +02:00
extract_backends MAINT: make clippy happy 2025-05-24 23:13:22 +02:00
src ENH: custom capablities to manage settings 2025-06-12 13:29:51 +02:00
.gitignore Initial commit 2024-08-21 15:35:42 +02:00
.gitlab-ci.yml MAINT: add CI for docs 2025-06-09 23:15:15 +02:00
Cargo.lock bumb version to 0.11.0 2025-06-12 13:29:51 +02:00
Cargo.toml bumb version to 0.11.0 2025-06-12 13:29:51 +02:00
CHANGELOG.md bumb version to 0.11.0 2025-06-12 13:29:51 +02:00
justfile MAINT: update justfile 2025-06-11 22:02:15 +02:00
LICENSE Initial commit 2024-08-21 15:25:24 +02:00
Makefile MAINT: just&make target to setup development 2025-05-26 17:23:01 +02:00
pyproject.toml META: rename crate to "qlue-ls" 2024-12-16 12:08:16 +01:00
README.md DOC: document custom capabilities 2025-06-11 21:51:12 +02:00
renovate.json Add renovate.json (#29) 2025-04-27 21:52:36 +02:00

🦀 Qlue-ls 🦀

Qlue-ls (pronounced "clueless") is a blazingly fast language server for SPARQL,
written in Rust 🦀, build for the web.

If you want to use Qlue-ls, check out the documentation.
To learn more about the origin story of this project, read the blog post.

🚀 Capabilities

Here is a quick overview what Qlue-ls can do.
A more detailed list can be found in the documentation.

📐 Formatting

Formats SPARQL queries to ensure consistent and readable syntax. Customizable options to align with preferred query styles are also implemented.

🩺 Diagnostics

Diagnostics provide feadback on the query.
Diagnostics come in severity: error, warning and info

Completion

Completion provides suggestions how the query could continue.

For completion of subjects, predicates or objects the language server sends completion-queries to the backend and gets the completions from the knowledge-graph.

These completion queries have to be configured for each knowledge-graph.

🛠️ Code Actions

Code action suggest complex changes to your input.
Often in the form of a quickfix, to fix a diagnostic.

Hover

Get information about a token on hover.

🕳 Jump

Quickly jump to the next or previous important location in the query.

operation identification

Determine if a operation is a query or update.

⚙️ Configuration

Qlue-ls can be configured through a qlue-ls.toml or qlue-ls.yml file.

Detailed exmplanations can be found in the documentation.

Here is the full default configuration

[format]
align_predicates = true
align_prefixes = true
separate_prolouge = false
capitalize_keywords = true
insert_spaces = true
tab_size = 2
where_new_line = true
filter_same_line = true

[completion]
timeout_ms = 5000
result_size_limit = 100

[prefixes]
add_missing = true
remove_unused = true

🙏 Special Thanks