sslides
Use cases
1. Research & Exploration - Document exploratory data analysis and present key findings - Share results with visualizations - Present literature review with Math formulas
2. Teaching & Learning - Create tutorial presentations from working code examples - Build step-by-step coding lessons with captured outputs - Share problem-solving workflows with students
3. Quick Topic Presentations - Ask Solveit to research a topic and
generate slides with ## header - Copy/paste screenshots to illustrate
concepts - Turn conversation into shareable slides
All this without typing all the content in a slides app e.g. Powerpoint or Google Slides
Get a standalone file for presenting offline
- Click Show all files toggle where you ran the presentation
- sslides.html file avalable for download
Usage
Installation
Install latest from the GitHub repository:
$ pip install git+https://github.com/rleyvasal/sslides.git
or from pypi
$ pip install sslides
Documentation
Documentation can be found hosted on this GitHub repository’s pages. Additionally you can find package manager specific guidelines on pypi.
How to use
- Code cell with Import package - run after finish slides content
from sslides import sshow
sshow()
#| sto tell sslides all cells below are your slides#header creaate the title slide##header creates regular slides - all content below heading is the slide content
#Making presentation from instructions
from sslides import sshow
sshow(theme='dark')
Two themes included light and dark or you can use your own theme:
my_theme = {
# title slide styles
'title-heading': 'text-9xl font-serif font-bold mb-4 text-blue-600', # h1 - blue serif
'slide-title': 'flex flex-col justify-center items-center text-center p-12 bg-gray-300', # gray background
# regular slides styles
'heading': 'text-8xl font-serif font-bold mb-16 text-blue-600', # h2 - blue serif
'slide-content': 'flex flex-col justify-start items-start pt-16 px-12 pb-12 bg-gray-300 text-black overflow-y-auto overflow-x-hidden', # gray bg, black text
'paragraph': 'text-5xl mb-6 leading-loose break-words text-black',
'list-item': 'text-5xl mb-10 ml-2 list-disc text-black break-words',
'list': 'text-lg ml-2 max-w-full w-full',
'code': 'mb-2',
'output': 'bg-gray-100 p-2 text-sm font-mono max-w-full text-black whitespace-pre-wrap break-words',
'output-image': 'max-w-full max-h-96 object-contain',
'error': 'bg-red-200 text-red-900 p-2 text-sm font-mono',
'pygments-style': 'default' # lighter syntax highlighting for gray background
}
sshow(theme=my_theme)
Introducing sslides
What is sslides
A tool for creating beautiful presentations from your solveit dialogs and research.
Share your learning by creating a slide deck from dialog.
Editing and navigation of slides without leaving the Dialog.
Create slides
- Import sslides and function
from sslides import sshow
sshow(theme='dark')
#| smarks the begining of slides#Creates a title slide##Creates a regular slides - all Markdown and code cells become content of in slide- Run
sshow()
Navigate sslides
- Click on preview window to make it active
- Navigate with arrow keys
- Navigate with mouse - hover on bottom right corner to see controls and page number
fkey enters fullscreen modeesckey exits fullscreen- Code hidden in notes also hidden in slides press arrow next Code to see code
Content Suported
- Markdown
- Bullet lists
- Latex Math
- Attachments from screenshots
- Code - highlighted
Markdown latex
## Latex - Content too long, scroll available
### Scaled Dot-Product Attention
The attention mechanism from "Attention is All You Need":
$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$
Where $Q$ is queries, $K$ is keys, $V$ is values, and $d_k$ is the dimension of the keys.
## Math Examples
Inline math: The quadratic formula is $x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$
Display math:
$$\int_a^b f(x)dx = F(b) - F(a)$$
Statistics:
$$\bar{x} = \frac{1}{n}\sum_{i=1}^n x_i$$
Calculus derivative:
$$\frac{d}{dx}(x^n) = nx^{n-1}$$
Matrix:
$$\begin{bmatrix} a & b \\ c & d \end{bmatrix}$$
Latex - Content too long, scroll available
Scaled Dot-Product Attention
The attention mechanism from “Attention is All You Need”:
$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$
Where $Q$ is queries, $K$ is keys, $V$ is values, and $d_k$ is the dimension of the keys.
Math Examples
Inline math: The quadratic formula is $x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$
Display math: $$\int_a^b f(x)dx = F(b) - F(a)$$
Statistics: $$\bar{x} = \frac{1}{n}\sum_{i=1}^n x_i$$
Calculus derivative: $$\frac{d}{dx}(x^n) = nx^{n-1}$$
Matrix: $$\begin{bmatrix} a & b \ c & d \end{bmatrix}$$
Attachments
Plots
Activation Functions Comparisons
- Code hidden in Solveit = Code hidden in slides
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 1000)
# Activation functions
relu = np.maximum(0, x)
gelu = 0.5 * x * (1 + np.tanh(np.sqrt(2/np.pi) * (x + 0.044715 * x**3)))
swish = x / (1 + np.exp(-x))
leaky_relu = np.where(x > 0, x, 0.01 * x)
fig, ax = plt.subplots(figsize=(10, 6))
ax.plot(x, relu, label='ReLU', linewidth=2)
ax.plot(x, gelu, label='GELU', linewidth=2)
ax.plot(x, swish, label='Swish', linewidth=2)
ax.plot(x, leaky_relu, label='Leaky ReLU', linewidth=2, linestyle='--')
ax.axhline(0, color='black', linewidth=0.5, alpha=0.3)
ax.axvline(0, color='black', linewidth=0.5, alpha=0.3)
ax.grid(True, alpha=0.3)
ax.legend(fontsize=12)
ax.set_xlabel('Input', fontsize=12)
ax.set_ylabel('Output', fontsize=12)
ax.set_title('Activation Functions Comparison', fontsize=14, pad=15)
plt.tight_layout()
plt.show()
Metadata
Release files for sslides 0.0.36
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sslides-0.0.36.tar.gz | 83.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sslides-0.0.36-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 165.0 kB
Release files / sslides-0.0.36.tar.gz
| Download URL | sslides-0.0.36.tar.gz |
|---|---|
| Size | 83.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a0225d032aad50ce0dded152f6441ba341ec37e30ce906db0600f6f701836847
|
|
BLAKE2b-256 checksum How to use checksums |
92d54ae9ee5632dd92b37a45f36651c6fda6d34f8b956d0f8cab411756736c23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / sslides-0.0.36-py3-none-any.whl
| Download URL | sslides-0.0.36-py3-none-any.whl |
|---|---|
| Size | 81.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9d3c707ef7a1562038ffdfa17ce21a53351ac66b45eef661289119bf7a9addeb
|
|
BLAKE2b-256 checksum How to use checksums |
ecc4812fbc7d4bf50ca6d91fc801ee8006888ad07e579b53ea0a2ef195d9a4da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency log