Fixed Structure

← Back to Library Structure

What’s already there the moment you clone JuSPICE — nothing here is generated or downloaded. See Auto-Generated Folders for what gets added later, once you install JuSPICE and start running notebooks.

Full Tree

juspice/
├── juspice/                       # the Python package (source code)
│   ├── io.py                        # load_data() / save_data(), SPICEData
│   ├── preprocess_module.py         # spice.preprocess
│   ├── feature_extract.py           # spice.features
│   ├── clustering_module.py         # spice.clustering
│   ├── inpainting_module.py         # spice.inpaint
│   ├── synth_data_module.py         # spice.synth_generation
│   ├── dcgan.py                     # DCGAN model used by synth_data_module
│   ├── stable_diff.py               # Stable Diffusion helpers
│   ├── segmentation_module.py       # spice.segmentation
│   ├── shape_based.py               # spice.shape_based
│   ├── tracking.py                  # provenance system (Tracker, DatasetHistory)
│   └── utils.py                     # shared helpers (e.g. standard_augmentations)
│
│
├── notebooks/                     # runnable example notebooks, one folder per topic
│   ├── notebooks_parameters.yaml    # shared settings read by every notebook
│   ├── io/
│   ├── preprocessing/
│   ├── feature_extraction/
│   ├── clustering/
│   ├── inpainting/
│   ├── physics_based_image_generation/
│   ├── synthetic_data/
│   └── segmentation/
│
│
├── Sample_data/                   # real example datasets — ships with the repo
│   ├── afm/
│   ├── em/
│   └── Train_test_images/
├── tests/                         # automated test suite (pytest)
├── pyproject.toml                 # package definition + dependencies
├── uv.lock                        # exact, reproducible version of every dependency
│
│
│── created automatically below — not shipped with the repository ──
│
│
├── venvs/                         # isolated Python environments (created by `uv sync`)
│   ├── .venv
│   ├── .venv_iopaint
│   └── .venv_micronet             # only if you set up MicroNet
│
│
├── preprocessed_data/             # see "Auto-Generated Folders"
│
│
├── Synthetic_images/              # see "Auto-Generated Folders"
│
│
├── Models/                        # see "Auto-Generated Folders"
│
│
└── Pretrained_models/             # see "Auto-Generated Folders"

What’s Already There

  • juspice/ — the actual Python package: one file per capability (io.py, preprocess_module.py, feature_extract.py, clustering_module.py, inpainting_module.py, synth_data_module.py with dcgan.py/stable_diff.py, segmentation_module.py, shape_based.py), plus tracking.py (the provenance system) and utils.py (shared helpers).

  • notebooks/ — the runnable example notebooks, one folder per topic (io, preprocessing, feature_extraction, clustering, inpainting, physics_based_image_generation, synthetic_data, segmentation), all reading their settings from one shared file, notebooks/notebooks_parameters.yaml.

  • Sample_data/ — real, non-synthetic example datasets (battery/AFM/EM images and a colloidal particle-tracking video) that ship with the repository, ready for the notebooks to load — see Sample Data.

  • tests/ — the automated test suite (pytest tests/).

  • pyproject.toml, uv.lock — the package definition and the exact, reproducible version of every dependency — see Installation.

See also