Kompresor notebooków: zmniejsz notebook Jupyter, żeby Git, e‑mail i recenzenci przestali narzekać
Ten kompresor notebooków kurczy przerośnięte pliki .ipynb w przeglądarce. Upuść plik, ustaw jak agresywnie ma czyścić i pobierz lżejszą wersję gotową pod Git, e‑mail lub recenzenta kodu. Domyślnie usuwa ciężkie wyjścia (zwłaszcza base64‑obrazy wykresów), czyści liczniki wykonań `In [n]`, odrzuca ulotne metadane widgetów, obcina końcowe białe znaki i minifikuje JSON — często zmniejsza rozmiar o rząd wielkości bez ruszania faktycznego kodu czy Markdownu.
Dlaczego to się liczy? Notebooki rosną z banalnych powodów. Jeden matplotlib w PNG base64 dorzuca często 1–2 MB. Bokeh, Plotly i ipywidgets trzymają stan w `metadata.widgets`, który bywa większy od samych komórek. Dify Gita są nieczytelne, pull‑requesty pęcznieją, załączniki pocztowe się zapychają. Kompresor usuwa ten balast bez zmiany sensu notebooka.
W zestawieniu z `jupyter nbconvert --ClearOutputPreprocessor.enabled=True` lub nbstripout strona jest lepsza, gdy nie chcesz stawiać narzędzi, notebook jest na Chromebooku albo chcesz jednorazowego czyszczenia przed udostępnieniem. Potrafi też więcej niż nbstripout: usuwa przejściowy stan widgetów, zamienia olbrzymie wyjścia obrazów na tekstowe placeholdery, tnie witaminę whitespace i minimalizuje JSON. nbstripout zostaje dla hooków pre‑commit; to narzędzie sprawdzi się przy pojedynczym pliku na cudzej maszynie.
Obawa o utratę danych? Ustawienia domyślne są ostrożne: wyjścia znikają, ale każda komórka źródłowa pozostaje dokładnie jak napisałeś, Markdown na swoim miejscu, metadane kernela i języka są poprawne. Poluzuj lub dociśnij przełączniki według sytuacji — zatrzymaj grafiki przy obcinaniu białych znaków albo usuń absolutnie wszystko dla najmniejszego rozmiaru.

