Metadata-Version: 2.4
Name: live-qna-jupyterlab
Version: 0.1.0
Summary: JupyterLab extension for embedding Live QnA as a floating widget.
Project-URL: Homepage, https://github.com/BAEM1N/live-qna-jupyterlab-extension
Project-URL: Repository, https://github.com/BAEM1N/live-qna-jupyterlab-extension
Project-URL: Issues, https://github.com/BAEM1N/live-qna-jupyterlab-extension/issues
Author: BAEM1N
License: MIT
Keywords: extension,jupyter,jupyterlab,live-qna
Classifier: Framework :: Jupyter
Classifier: Framework :: Jupyter :: JupyterLab
Classifier: Framework :: Jupyter :: JupyterLab :: 4
Classifier: Framework :: Jupyter :: JupyterLab :: Extensions
Classifier: Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Requires-Dist: jupyterlab<5,>=4.5.5
Description-Content-Type: text/markdown

# live-qna-jupyterlab

JupyterLab extension for opening the existing Live QnA server inside JupyterLab as a floating overlay or left sidebar panel.

## Quick install

### End users

Once published to PyPI, install it with:

```bash
pip install live-qna-jupyterlab
```

Then restart JupyterLab.

### Shared server / JupyterHub admins

Install the package once into the Python environment that runs JupyterLab:

```bash
pip install live-qna-jupyterlab
```

All users on that environment can use the extension after JupyterLab restarts.

## Local install from this repository

```bash
cd jupyterlab-extension
./scripts/build-dist.sh
pip install dist/*.whl
```

If you are not publishing to PyPI yet, sharing the built wheel from `dist/` is the easiest way for other people to install the extension.

## What it includes

- Top-area quick access button
- Floating overlay with embedded iframe
- Optional left sidebar panel
- Settings for server URL, auto-open, and visibility options

## Settings

Open JupyterLab Settings Editor and adjust this plugin:

- `serverUrl`: Live QnA URL (default: `https://qna.baeum.ai.kr`)
- `showTopButton`: top quick-access 버튼 표시 여부
- `showLeftPanel`: left sidebar tab 표시 여부
- `autoOpen`: JupyterLab 복원 후 자동 오픈 여부
- `openMode`: `floating` 또는 `left`

Example user settings file:

```json
{
  "serverUrl": "https://qna.baeum.ai.kr",
  "showTopButton": true,
  "showLeftPanel": true,
  "autoOpen": false,
  "openMode": "left"
}
```

## Development

```bash
cd jupyterlab-extension
npm ci
npm run build
```

## Build a distributable wheel

```bash
cd jupyterlab-extension
./scripts/build-dist.sh
```

This only requires `uv`; the Python build environment will install the packaging/build dependencies automatically.

It produces a Python wheel/sdist in `dist/`. The wheel is the easiest artifact to share with other users.

## GitHub Actions

- `python-package.yml` builds wheel/sdist on PRs, pushes, and tags.
- Tagging `v*` also prepares the workflow for optional PyPI publishing.
- To enable PyPI publishing, set the repository variable `PUBLISH_TO_PYPI=true` and configure PyPI trusted publishing for this repository.

## Notes

- The extension uses direct server URL mode.
- Default Live QnA URL: `https://qna.baeum.ai.kr`
