Skip to content

MuellerConstantin/qlint

Repository files navigation

Logo

qlint

Opinionated linting and formatting utilities for Qlik script.

Demo
Demo: qlint in the Qlik Sense Data Load Editor

Table of contents

Introduction

Everyone on your team writes Qlik script their own way? Nothing consistent, code hard to read and a pain to maintain? qlint fixes that — it enforces a consistent, opinionated style for Qlik load scripts, autoformats on demand, and flags violations where you write them, so review time goes into logic instead of whitespace, casing, and keyword conventions.

qlint ships in multiple flavors depending on how you work:

  • a Chrome extension that hooks straight into the Qlik Sense Data Load Editor — no install, no terminal, just click and lint;
  • a CLI for local checks, pre-commit hooks, and CI gates.

Both are powered by the same engine, so the rules you see in the browser are the exact same rules that fail your pipeline.

Packages

Package Audience What it does
@qlint/chrome-ext Qlik developers, analysts, BI teams Chrome extension that injects inline lint feedback and one-click formatting directly into the Qlik Sense Data Load Editor.
@qlint/cli Developers, CI/CD pipelines Command-line interface that lints and auto-fixes .qvs files from the terminal or as a CI step. Drop-in for pre-commit hooks and gates.
@qlint/core Tool authors, IDE plugin developers The engine behind both bindings — string-in, diagnostics-out. Embed it in your own editor integration, custom check runner, or service.

How it's organized

qlint is a monorepo with one dependency-free engine (@qlint/core) and a set of thin bindings around it. The core owns the tokenizer, the complete ruleset, and the formatting logic; it has no I/O and no platform assumptions, so it runs equally well in Node, the browser, or a Web Worker. Every binding — CLI, Chrome extension, future IDE plugins — handles only its platform concerns and delegates every linting and formatting decision to core. That means a single source of truth for style and one place to add or tune rules.

For the full list of built-in rules and their options, see packages/core/docs/rules.md.

License

Copyright (c) 2026 Constantin Müller

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

MIT License or LICENSE for more details.

Forbidden

Hold Liable: Software is provided without warranty and the software author/license owner cannot be held liable for damages.

About

Opinionated linting/formatting utilities for Qlik Script (QVS)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors