Metadata-Version: 2.1
Name: lispi
Version: 0.0.9
Summary: `lispi` (Learning Interactive Slides and PIthon) is a python package for generating live notebooks where you can learn the content by listening to and reading from the slides at the same time you can write and execute yourown code from the slides in real time.
Project-URL: Homepage, https://github.com/B7M/lispi
Author-email: B7M <ibsnetwork001@gmail.com>
License: Copyright (c) 2023 The Python Packaging Authority
        
        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.
License-File: LICENSE
Keywords: code,live,notebook,py-scripts
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.7
Requires-Dist: click
Requires-Dist: gtts
Requires-Dist: jupyter
Requires-Dist: jupyterlab
Requires-Dist: nbconvert
Requires-Dist: nbformat
Requires-Dist: tomli; python_version < '3.11'
Description-Content-Type: text/markdown

# Lispi Documentation

## Introduction

`lispi` (Learning Interactive Slides and PIthon) is a Python package that provides a convenient way to convert Jupyter notebooks into interactive slides. It allows users to create engaging presentations with interactive elements directly from the slides.

## Installation

### Install from GitHub files
To install `lispi` package, you can clone the repository from GitHub and modify it to your liking and install on your system. Open your terminal and run the following command:

```
git clone https://github.com/B7M/lispi.git
```
Navigate to the directory containing the repository and follow these steps:

Make the build file:

```
python -m build
```
Once the build file is created, run the following command to install the package:
```
pip install dist/lispi-0.0.8-py3-none-any.whl
```


### Install from PyPI
To install `lispi` package, you can use pip, the Python package installer. Open your terminal and run the following command:

```
pip install lispi
```

## Usage
### Command Line Interface
To use lispi, in your terminal follow these steps:
After installing the package, you can use the `lispi` command to convert your Jupyter notebook into interactive slides. In your terminal, navigate to the folder containing the notebooks and run the following command:

```lispi```

Upon running the command, the package will prompt you to enter the path to your Jupyter notebook file. Enter the name of the file press enter. The package will convert the Jupyter notebook into interactive slides and save the output HTML file in the output folder in the same directory as html file and audio file folder.

### Python
If you want to use lispi in your Python code, you can import the package and use it as a library. To use lispi, in python follow these steps:

1. Import the `Gen` class from the package:

   ```python
   import lispi
   ```
   or 

   ```python
    from lispi import *
   ```

2. Create an instance of the `Interactive Slides Generator` class:

   ```python
   generator = lispi.Gen
   ```

3. Specify the Jupyter notebook file you want to convert:

   ```python
   notebook_file = "path/to/your/notebook.ipynb"
   ```

4. Generate the interactive slides:

   ```python
   generator(notebook_file)
   ```

5. The package will convert the Jupyter notebook into interactive slides and save the output HTML file in the output folder in the same directory as html file and audio file folder.

## Configuration

Lispi provides several configuration options to customize the output slides. You can pass these options as arguments when creating an instance of the `lispi` class. Here are the available configuration options:

- `audio`: Specify if you wish the output without audio (default: "unmute").
- `output_file`: Specify the output file path for the generated slides (default: "output.html").

Example:

```python
generator = lispi(
    audio="unmute",
    output_file="path/to/output/slides.html"
)
```

## Examples

Here is an example that comes with the package. To run the example, in your terminal or python code provide 'original_example' as the file name.

```python
import lispi

# Create an instance of the lispi class
generator = lispi.Gen

# Specify the example notebook file
notebook_file = "original_example"

# Generate the interactive slides
generator(notebook_file)
```

## Conclusion

Lispi package provides a convenient way to convert Jupyter notebooks into interactive slides. It allows users to create engaging presentations with interactive elements easily. By following the installation and usage instructions outlined in this documentation, you can leverage this package to generate interactive slides from your Jupyter notebooks effortlessly.
