JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q63052F
  • License MIT

Bindings to the JSON-RPC Workspace API of the Postgres Language Tools daemon

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@postgrestools/backend-jsonrpc) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    [!WARNING] This package is deprecated. Please use @postgres-language-server/cli instead.

    The @postgrestools namespace is being phased out in favor of @postgres-language-server. All future updates and development will happen in the new package.

    Postgres Language Server

    Postgres Language Server

    A collection of language tools and a Language Server Protocol (LSP) implementation for Postgres, focusing on developer experience and reliable SQL tooling.

    Docs: pg-language-server.com

    Install: instructions

    Overview

    LSP Demo CLI Demo
    LSP Demo CLI Demo

    This project provides a toolchain for Postgres development, built on Postgres' own parser libpg_query to ensure 100% syntax compatibility. It is built on a Server-Client architecture with a transport-agnostic design. This means all features can be accessed not only through the Language Server Protocol, but also through other interfaces like a CLI, HTTP APIs, or a WebAssembly module. The goal is to make all the great Postgres tooling out there as accessible as possible, and to build anything that is missing ourselves.

    The following features are implemented:

    • Autocompletion
    • Syntax Error Highlighting
    • Type-checking (via EXPLAIN error insights)
    • Linter, inspired by Squawk

    Our current focus is on refining and enhancing these core features while building a robust and easily accessible infrastructure. For future plans and opportunities to contribute, please check out the issues and discussions. Any contributions are welcome!

    Contributors

    Development

    Using Nix

    nix develop
    docker-compose up -d

    Using Docker

    docker-compose up -d

    Acknowledgements

    A big thanks to the following projects, without which this project wouldn't have been possible:

    • libpg_query: For extracting the Postgres' parser
    • Biome: For implementing a toolchain infrastructure we could copy from
    • Squawk: For the linter inspiration