# jsoniq-jupyter-lsp
[![PyPI version](https://badge.fury.io/py/jsoniq-jupyter-lsp.svg)](https://badge.fury.io/py/jsoniq-jupyter-lsp)
[![License](https://img.shields.io/badge/license-apache-blue.svg)](https://opensource.org/license/apache-2-0)
`jsoniq-jupyter-lsp` is a Python package that provides a language server setup for the JSONiq programming language. This package includes the necessary configuration to enable JSONiq to work seamlessly with the JupyterLab Language Server Protocol (LSP) extension, offering rich language features to users of JupyterLab.
## Features
- **Language Server for JSONiq**: Implements the Language Server Protocol (LSP) for JSONiq.
- **JupyterLab Integration**: Configures JupyterLab to recognize and use the JSONiq language server.
- **Rich Language Features**: Provides autocompletion, diagnostics, and other language features for JSONiq in JupyterLab.
## Installation
You can install the `jsoniq-jupyter-lsp` package using pip:
```bash
pip install jsoniq-jupyter-lsp
```
## Usage
To use the JSONiq language server in JupyterLab, follow these steps:
1. **Install JupyterLab and the JupyterLSP extension**:
```bash
pip install 'jupyterlab>=4.1.0,<5.0.0a0' jupyterlab-lsp
```
2. **Install the `jsoniq-jupyter-lsp` package**:
```bash
pip install jsoniq-jupyter-lsp
```
3. **Start JupyterLab**:
```bash
jupyter lab
```
4. **Open a JSONiq file**: Open a `.jq` or `.ipynb` file in JupyterLab to start using the language server features.
## Configuration
By default, `jsoniq-jupyter-lsp` will be automatically configured to work with JupyterLab. However, you can customize the configuration if needed.
## Contributing
We welcome contributions to the `jsoniq-jupyter-lsp` project! If you have any suggestions, bug reports, or pull requests, please feel free to subapache them on the [GitHub repository](https://github.com/DavidBuzatu-Marian/JSONiq-JupyterLabLSP).
### Development Setup
1. **Clone the repository**:
```bash
git clone https://github.com/DavidBuzatu-Marian/JSONiq-JupyterLabLSP.git
cd jsoniq-jupyter-lsp
```
2. **Create a virtual environment**:
```bash
python -m venv
source venv/bin/activate # On Windows use `venv\Scripts\activate`
```
3. **Install the package in development mode**:
```bash
pip install -e .
```
## License
This project is licensed under the Apache-2.0 License. See the [LICENSE](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": "https://www.jsoniq.org/",
"name": "jsoniq-jupyter-lsp",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "rumble jsoniq rumbledb json IPython jupyter",
"author": "David-Marian Buzatu",
"author_email": "davidm.buzatu@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/30/11/f4ca4e791746c8e3823e4b9583d553d13862a4387373aaad239947feb6d2/jsoniq_jupyter_lsp-1.0.0.tar.gz",
"platform": null,
"description": "# jsoniq-jupyter-lsp\n\n[![PyPI version](https://badge.fury.io/py/jsoniq-jupyter-lsp.svg)](https://badge.fury.io/py/jsoniq-jupyter-lsp)\n[![License](https://img.shields.io/badge/license-apache-blue.svg)](https://opensource.org/license/apache-2-0)\n\n`jsoniq-jupyter-lsp` is a Python package that provides a language server setup for the JSONiq programming language. This package includes the necessary configuration to enable JSONiq to work seamlessly with the JupyterLab Language Server Protocol (LSP) extension, offering rich language features to users of JupyterLab.\n\n## Features\n\n- **Language Server for JSONiq**: Implements the Language Server Protocol (LSP) for JSONiq.\n- **JupyterLab Integration**: Configures JupyterLab to recognize and use the JSONiq language server.\n- **Rich Language Features**: Provides autocompletion, diagnostics, and other language features for JSONiq in JupyterLab.\n\n## Installation\n\nYou can install the `jsoniq-jupyter-lsp` package using pip:\n\n```bash\npip install jsoniq-jupyter-lsp\n```\n\n## Usage\n\nTo use the JSONiq language server in JupyterLab, follow these steps:\n\n1. **Install JupyterLab and the JupyterLSP extension**:\n\n ```bash\n pip install 'jupyterlab>=4.1.0,<5.0.0a0' jupyterlab-lsp\n ```\n\n2. **Install the `jsoniq-jupyter-lsp` package**:\n\n ```bash\n pip install jsoniq-jupyter-lsp\n ```\n\n3. **Start JupyterLab**:\n\n ```bash\n jupyter lab\n ```\n\n4. **Open a JSONiq file**: Open a `.jq` or `.ipynb` file in JupyterLab to start using the language server features.\n\n## Configuration\n\nBy default, `jsoniq-jupyter-lsp` will be automatically configured to work with JupyterLab. However, you can customize the configuration if needed.\n\n## Contributing\n\nWe welcome contributions to the `jsoniq-jupyter-lsp` project! If you have any suggestions, bug reports, or pull requests, please feel free to subapache them on the [GitHub repository](https://github.com/DavidBuzatu-Marian/JSONiq-JupyterLabLSP).\n\n### Development Setup\n\n1. **Clone the repository**:\n\n ```bash\n git clone https://github.com/DavidBuzatu-Marian/JSONiq-JupyterLabLSP.git\n cd jsoniq-jupyter-lsp\n ```\n\n2. **Create a virtual environment**:\n\n ```bash\n python -m venv\n source venv/bin/activate # On Windows use `venv\\Scripts\\activate`\n ```\n\n3. **Install the package in development mode**:\n\n ```bash\n pip install -e .\n ```\n\n## License\n\nThis project is licensed under the Apache-2.0 License. See the [LICENSE](LICENSE) file for details.\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "Jupyter extension to support RumbleDB development in notebooks. The extension runs the language server for JSONiq to provide code auto-completion, syntax highlighting, and diagnostics.",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://www.jsoniq.org/"
},
"split_keywords": [
"rumble",
"jsoniq",
"rumbledb",
"json",
"ipython",
"jupyter"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d9551e7682ffdfed5eb0dd8d355b6c77bc6e7377f51631e85c762601a0080ed2",
"md5": "724093e5e3c4b49e0d39399ded33075d",
"sha256": "493f8d4a4caed30d85abb94588d59b5a51262d6d90516c7e3ae1a976228a17d3"
},
"downloads": -1,
"filename": "jsoniq_jupyter_lsp-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "724093e5e3c4b49e0d39399ded33075d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 16325263,
"upload_time": "2024-06-01T12:52:46",
"upload_time_iso_8601": "2024-06-01T12:52:46.504653Z",
"url": "https://files.pythonhosted.org/packages/d9/55/1e7682ffdfed5eb0dd8d355b6c77bc6e7377f51631e85c762601a0080ed2/jsoniq_jupyter_lsp-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3011f4ca4e791746c8e3823e4b9583d553d13862a4387373aaad239947feb6d2",
"md5": "21ebcba55be40e8d97d4528e9de8b2ab",
"sha256": "ae04c8ce08c0c36f8343ff99a60d1d16353b941d1ce71ea40bc06f6f74187f98"
},
"downloads": -1,
"filename": "jsoniq_jupyter_lsp-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "21ebcba55be40e8d97d4528e9de8b2ab",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15623632,
"upload_time": "2024-06-01T12:52:50",
"upload_time_iso_8601": "2024-06-01T12:52:50.715126Z",
"url": "https://files.pythonhosted.org/packages/30/11/f4ca4e791746c8e3823e4b9583d553d13862a4387373aaad239947feb6d2/jsoniq_jupyter_lsp-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-01 12:52:50",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "jsoniq-jupyter-lsp"
}