Lipid droplets promote aberrant liquid-liquid phase separation of alpha-synuclein impairing energy homeostasis.
The 10 matches
- [1] § Methods › Methods and protocols › Mitophagy experiments ↔ analyses_of_alpha-synuclein_biomolecular_condensates/C12_pulse_chase/C12_pulse_chase.ipynb, lines 116–126 · score 0.76 · sigmoid adjustment, Gaussian blur, reduce noise, green channel, preprocesses, intensity
- [2] § Methods › Methods and protocols › Pulse chase assay for lipid droplet turnover ↔ analyses_of_alpha-synuclein_biomolecular_condensates/C12_pulse_chase/pulse_chase_lipid_droplet_analysis.ipynb, lines 56–66 · score 0.74 · sigmoid adjustment, Gaussian blur, reduce noise, lipid droplets, preprocessing, intensity
- [3] § Methods › Methods and protocols › αSyn inclusion quantification through ×63 images ↔ analyses_of_alpha-synuclein_biomolecular_condensates/1kOA_early_inclusions/1kOA_earlyInclusions.ipynb, lines 300–433 · score 0.74 · red channels, segment cells, cell mask, Swiss cheese, summing, surface area
- [4] § Methods › Methods and protocols › αSyn inclusion quantification through ×63 images ↔ analyses_of_alpha-synuclein_biomolecular_condensates/C12_pulse_chase/pulse_chase_lipid_droplet_analysis.ipynb, lines 56–66 · score 0.74 · sigmoid adjustment, Gaussian blur, reduce noise, lipid droplet, preprocessing, Fluorescence
- [5] § Methods › Methods and protocols › Pulse chase assay for lipid droplet turnover ↔ analyses_of_alpha-synuclein_biomolecular_condensates/C12_pulse_chase/C12_pulse_chase.ipynb, lines 116–126 · score 0.72 · sigmoid adjustment, Gaussian blur, reduce noise, preprocessing, intensity, channels
- [6] § Methods › Methods and protocols › Mitophagy experiments ↔ inclusion_pipeline/preprocessing.py, lines 26–60 · score 0.71 · sigmoid adjustment, Gaussian blur, reduce noise, preprocesses, intensity, channels
- [7] § Methods › Methods and protocols › Mitochondrial membrane potential measurement ↔ analyses_of_alpha-synuclein_biomolecular_condensates/1kOA_early_inclusions/1kOA_earlyInclusions.ipynb, lines 25–72 · score 0.57 · Cellpose, cyto3, inside, diameter, filtered, radius
- [8] § Methods › Methods and protocols › Mitochondrial membrane potential measurement ↔ analyses_of_alpha-synuclein_biomolecular_condensates/C12_pulse_chase/pulse_chase_lipid_droplet_analysis.ipynb, lines 214–297 · score 0.55 · orange channel, green channel, circularity, thresholding, overlap, mitochondria
- [9] § Methods › Methods and protocols › Mitophagy experiments ↔ example.ipynb, lines 17–26 · score 0.55 · LAMP1 RFP, mito BFP
- [10] § Results › αSyn condensates promote localized mitophagy ↔ example.ipynb, lines 17–26 · score 0.50 · LAMP1 RFP, mito BFP
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
Jupyter notebook · 325 lines · 13 KB · MIT · 3 matches
- # %%
- import os
- import numpy as np
- import pandas as pd
- import matplotlib.pyplot as plt
- from skimage.filters import gaussian
- from skimage.morphology import remove_small_objects
- from skimage.measure import label, regionprops
- from skimage import exposure
- from skimage import measure
- from czifile import imread
- from cellpose import models
- model_cellpose = models.Cellpose(model_type='cyto')
- # %%
- def display_two_images(image1, image2, title1, title2, path):
- """Display two images side-by-side with smaller title font."""
- filename = os.path.basename(path) # Extract final part of path
- fig, axes = plt.subplots(1, 2, figsize=(10, 5))
- axes[0].imshow(image1, cmap='gray' if image1.ndim == 2 else None)
- axes[0].set_title(f"{filename} {title1}", fontsize=10)
- axes[0].axis('off')
- axes[1].imshow(image2, cmap='gray' if image2.ndim == 2 else None)
- axes[1].set_title(f"{filename} {title2}", fontsize=10)
- axes[1].axis('off')
- plt.tight_layout()
- plt.show()
- def display_image(image, title, path):
- """Display the image."""
- plt.imshow(image)
- plt.axis('off')
- plt.title(f"{title} {path}")
- plt.show()
- def extract_image_paths(folder):
- """Extract all image file paths from the specified folder."""
- return [os.path.join(folder, f) for f in os.listdir(folder) if os.path.isfile(os.path.join(folder, f))]
- def read_image(image_path):
- """Read the LSM image from the specified path."""
- return imread(image_path)
- def count(mask):
- """Count the number of unique labels in the mask."""
- return len(np.unique(label(mask))) - 1 # Exclude background label (0)
- def extract_channels(image: np.ndarray) -> tuple[np.ndarray, np.ndarray]:
- """Extract green and red channels from the squeezed image (shape: [Z, C, H, W])."""
- return image[0], image[1], image[2], image[3]
- def preprocess_channel(channel):
- """
- Preprocess the green fluorescence channel for better segmentation and inclusion detection.
- - Applies Gaussian blur to reduce noise.
- - Enhances contrast using sigmoid adjustment.
- - Normalizes intensities to [0, 1] for consistent processing.
- """
- channel = normalize_image(channel)
- confocal_img = gaussian(channel, sigma=2)
- confocal_img = exposure.adjust_sigmoid(channel, cutoff=0.1)
- return confocal_img
- def normalize_image(image):
- """
- Normalize the image to the range [0, 1].
- This is useful for consistent processing across different images.
- """
- return (image - np.min(image)) / (np.max(image) - np.min(image))
- def calculate_surface_area(labeled_image: np.ndarray) -> float:
- """Calculate the total surface area for labeled regions."""
- props = regionprops(labeled_image)
- return sum(prop.area for prop in props)
- def find_swiss_cheese_inclusions(inclusion_image, red_channel_thresholded, verbose=False):
- """
- Identify and categorize inclusion objects based on their overlap with lipid droplets.
- - Labels individual inclusion objects in the binary inclusion image.
- - For each inclusion:
- - Checks whether it overlaps with the thresholded red channel (e.g., lipid droplets).
- - If it overlaps, adds it to the "swiss cheese" mask (inclusions with holes).
- - Otherwise, adds it to the "regular inclusion" mask (solid inclusions).
- - Returns two binary masks:
- - swiss_chess_inclusions: inclusions that intersect with the red channel
- - regular_inclusions: inclusions that do not intersect with the red channel
- """
- swiss_chess_inclusions = np.zeros_like(inclusion_image)
- regular_inclusions = np.zeros_like(inclusion_image)
- labeled_inclusions = label(inclusion_image)
- for i, inclusion in enumerate(regionprops(labeled_inclusions)):
- mask = labeled_inclusions == inclusion.label
- overlap = mask * red_channel_thresholded
- if np.sum(overlap) > 30:
- swiss_chess_inclusions += mask
- else:
- regular_inclusions += mask
- return swiss_chess_inclusions, regular_inclusions
- def remove_overlapping_objects(mask1, mask2):
- # Label mask1 if it's not already labeled
- labeled_mask1 = label(mask1)
- result_mask = np.zeros_like(mask1, dtype=np.uint8)
- for region in regionprops(labeled_mask1):
- obj_mask = (labeled_mask1 == region.label)
- # Check if it overlaps with mask2
- if np.any(obj_mask & (mask2 > 0)):
- continue # Skip overlapping object
- else:
- result_mask[obj_mask] = 1 # Keep the non-overlapping object
- return result_mask
- def extract_touching_objects(mask1, mask2):
- """
- Return a mask containing whole objects in mask1
- that touch mask2.
- """
- touching_objects = np.zeros_like(mask1, dtype=np.uint8)
- labeled_mask = label(mask1)
- for region in regionprops(labeled_mask):
- region_mask = (labeled_mask == region.label)
- overlap = region_mask * mask2
- if np.sum(overlap) > 0:
- touching_objects += region_mask
- return touching_objects
- def count_touching_objects(mask1, mask2):
- """
- Count how many objects in mask1 touch any part of mask2.
- Parameters:
- mask1 (ndarray): Binary or labeled mask (objects to test).
- mask2 (ndarray): Binary mask (objects to touch against).
- Returns:
- int: Number of objects in mask1 that touch mask2.
- """
- # Ensure binary input
- mask1 = mask1 > 0
- mask2 = mask2 > 0
- labeled_mask1 = label(mask1)
- count = 0
- for region in regionprops(labeled_mask1):
- obj_mask = labeled_mask1 == region.label
- if np.any(obj_mask & mask2):
- count += 1
- return count
- def circularity_index(mask):
- regions = measure.regionprops(label(mask))
- # Create empty masks to store the results
- clustered_lds = np.zeros_like(mask, dtype=bool)
- single_lds = np.zeros_like(mask, dtype=bool)
- # Iterate through regions and calculate circularity
- for region in regions:
- area = region.area
- perimeter = measure.perimeter(region.image)
- # Avoid division by zero
- if perimeter == 0 or area <= 10:
- continue
- circularity = (4 * np.pi * area) / (perimeter ** 2)
- # Assign region to the appropriate mask based on circularity
- if circularity < 0.7:
- # Mask for clustered regions
- clustered_lds[region.coords[:, 0], region.coords[:, 1]] = 1
- else:
- # Mask for non-clustered regions
- single_lds[region.coords[:, 0], region.coords[:, 1]] = 1
- clustered_lds = clustered_lds.astype(bool)
- single_lds = single_lds.astype(bool)
- return clustered_lds, single_lds
- def remove_overlapping_objects(mask1, mask2):
- # Label mask1 if it's not already labeled
- labeled_mask1 = label(mask1)
- result_mask = np.zeros_like(mask1, dtype=np.uint8)
- for region in regionprops(labeled_mask1):
- obj_mask = (labeled_mask1 == region.label)
- # Check if it overlaps with mask2
- if np.any(obj_mask & (mask2 > 0)):
- continue # Skip overlapping object
- else:
- result_mask[obj_mask] = 1 # Keep the non-overlapping object
- return result_mask
- # %%
- def analysis(red: np.ndarray, orange:np.ndarray, green:np.ndarray, blue:np.ndarray, path:str) -> pd.DataFrame:
- data = []
- df_cell_summary = pd.DataFrame()
- print("Starting analysis...")
- #preprocess green channel
- contrast_adjusted_green_normalized = (green - green.min()) / (green.max() - green.min())
- threshold_value_green = np.mean(contrast_adjusted_green_normalized) + (np.std(contrast_adjusted_green_normalized) * 3)
- green_thresholded = contrast_adjusted_green_normalized > threshold_value_green
- green_thresholded = remove_small_objects(green_thresholded, min_size=10)
- #display_two_images(green, green_ml, "Green Channel", "Green ML", path)
- display_two_images(green, green_thresholded, "Green Channel", "green thresholded", path)
- #segment red channel to find lipid droplets
- contrast_adjusted_red_normalized = (red - red.min()) / (red.max() - red.min())
- threshold_value_red = np.mean(contrast_adjusted_red_normalized) + (np.std(contrast_adjusted_red_normalized) * 3)
- red_thresholded = contrast_adjusted_red_normalized > threshold_value_red
- red_thresholded = remove_small_objects(red_thresholded, min_size=10)
- display_two_images(red, red_thresholded, "Red Channel", "Red Thresholded", path)
- #segment orange channel to find lipid droplets
- contrast_adjusted_orange_normalized = (orange - orange.min()) / (orange.max() - orange.min())
- threshold_value_orange = np.mean(contrast_adjusted_orange_normalized) + (np.std(contrast_adjusted_orange_normalized) * 3)
- orange_thresholded = contrast_adjusted_orange_normalized > threshold_value_orange
- orange_thresholded = remove_small_objects(orange_thresholded, min_size=10)
- display_two_images(orange, orange_thresholded, "Orange Channel", "Orange Thresholded", path)
- #segment blue channel for mitochondria
- contrast_adjusted_blue_normalized = (blue - blue.min()) / (blue.max() - blue.min())
- threshold_value_blue = np.mean(contrast_adjusted_blue_normalized) + (np.std(contrast_adjusted_blue_normalized) * 3)
- blue_thresholded = contrast_adjusted_blue_normalized > threshold_value_blue
- blue_thresholded = remove_small_objects(blue_thresholded, min_size=10)
- display_two_images(blue, blue_thresholded, "Blue Channel", "Blue Thresholded", path)
- green_clustered_lds, green_single_lds = circularity_index(green_thresholded)
- red_clustered_lds, red_single_lds = circularity_index(red_thresholded)
- orange_clustered_lds, orange_single_lds = circularity_index(orange_thresholded)
- display_two_images(green_single_lds, green_clustered_lds, "Green Single LDs", "Green Clustered LDs", path)
- display_two_images(red_single_lds, red_clustered_lds, "Red Single LDs", "Red Clustered LDs", path)
- display_two_images(orange_single_lds, orange_clustered_lds, "Orange Single LDs", "Orange Clustered LDs", path)
- lipid_droplet_red_not_orange = remove_overlapping_objects(red_thresholded, orange_thresholded)
- lipid_droplet_red_and_orange = extract_touching_objects(red_thresholded, orange_thresholded)
- lipid_droplet_green_not_orange = remove_overlapping_objects(green_thresholded, orange_thresholded)
- lipid_droplet_green_and_orange = extract_touching_objects(green_thresholded, orange_thresholded)
- lipid_droplet_green_not_red = remove_overlapping_objects(green_thresholded, red_thresholded)
- lipid_droplet_red_not_green = remove_overlapping_objects(red_thresholded, green_thresholded)
- lipid_droplet_green_and_red = extract_touching_objects(green_thresholded, red_thresholded)
- data.append({
- 'Image Path': path,
- 'Number of green objects': count(green_thresholded),
- "Number of red objects": count(red_thresholded),
- "Number of orange objects": count(orange_thresholded),
- "Number of blue objects": count(blue_thresholded),
- "Surface Area of green objects": calculate_surface_area(label(green_thresholded)),
- "Surface Area of red objects": calculate_surface_area(label(red_thresholded)),
- "Surface Area of orange objects": calculate_surface_area(label(orange_thresholded)),
- "Surface Area of blue objects": calculate_surface_area(label(blue_thresholded)),
- "Number of green clustered LDs": count(green_clustered_lds),
- "Number of green single LDs": count(green_single_lds),
- "Number of red clustered LDs": count(red_clustered_lds),
- "Number of red single LDs": count(red_single_lds),
- "Number of orange clustered LDs": count(orange_clustered_lds),
- "Number of orange single LDs": count(orange_single_lds),
- "Number of red LDs not orange": count(lipid_droplet_red_not_orange),
- "Number of red LDs and orange": count(lipid_droplet_red_and_orange),
- "Number of green LDs not orange": count(lipid_droplet_green_not_orange),
- "Number of green LDs and orange": count(lipid_droplet_green_and_orange),
- "Number of green LDs not red": count(lipid_droplet_green_not_red),
- "Number of red LDs not green": count(lipid_droplet_red_not_green),
- "Number of green LDs and red": count(lipid_droplet_green_and_red),
- })
- df_cell_summary = pd.DataFrame(data)
- return df_cell_summary
- # %%
- def main(image_folder):
- images_to_analyze = extract_image_paths(image_folder)
- output_dir = os.getcwd()
- df_cell_summary_list = []
- for path in images_to_analyze:
- image = read_image(path)
- image_squeezed = np.squeeze(image)
- red, orange, green, blue= extract_channels(image_squeezed)
- df_cell_summary = analysis(red, orange, green, blue, path)
- df_cell_summary_list.append(df_cell_summary)
- combined_cell_summary_df = pd.concat(df_cell_summary_list, ignore_index=True)
- output_summary_path = os.path.join(output_dir, '100925_pulsechase_lipiddroplets_SUMMARY.xlsx')
- combined_cell_summary_df.to_excel(output_summary_path, index=False)
- if __name__ == "__main__":
- image_folder = '100925_pulsechase_lipiddroplets_images'
- main(image_folder)
pulse_chase_lipid_droplet_analysis.ipynb at commit 4ca87aa, under MIT · at the source
Overview
and 8 other authors
Heba Alnakhala9,10, Nagendran Ramalingam9,10,11,12, Arati Tripathi9,10, Tim Bartels13, Ulf Dettmer9,10, Zheng Shi3, Wei Dai2, Eleanna Kara113 affiliations
- Department of Neurology, Robert Wood Johnson Medical School, Institute for Neurological Therapeutics at Rutgers, Rutgers Biomedical and Health Sciences, Piscataway, NJ USA
- Department of Cell Biology and Neuroscience & Institute for Quantitative Biomedicine, Rutgers University, Piscataway, NJ USA
- Department of Chemistry and Chemical Biology, Rutgers University, Piscataway, NJ USA
- Present Address: Department of Chemistry, Stanford University, Stanford, CA USA
- Present Address: Wu Tsai Neurosciences Institute and ChEM-H Institute, Stanford University, Stanford, CA USA
- Present Address: Bowles Center for Alcohol Studies, School of Medicine, University of North Carolina, Chapel Hill, NC USA
- Present Address: Department of Molecular Biophysics and Biochemistry, Yale University, New Haven, CT USA
- Present Address: Department of Radiology, Athinoula A. Martinos Center for Biomedical Imaging, Massachusetts General Hospital, Charlestown, MA USA
- Ann Romney Center for Neurologic Diseases, Brigham and Women’s Hospital, Boston, MA USA
- Harvard Medical School, Boston, MA USA
- Present Address: Byrd Alzheimer’s Center & Research Institute, University of South Florida, Tampa, FL USA
- Present Address: Department of Molecular Medicine, USF Morsani College of Medicine, Tampa, FL USA
- UK Dementia Research Institute, University College London, London, UK
Abstract
Alpha-synuclein (αSyn) inclusions are a defining neuropathological feature of Parkinson’s disease, but the cellular events that initiate their formation and promote neurotoxicity remain incompletely understood. Aberrant liquid–liquid phase separation has emerged as a potential early step in αSyn dysregulation, yet the physiological triggers and functional consequences of this process are unclear. Here, we show that lipid droplets promote the spontaneous phase separation of wild-type and E46K mutant αSyn into condensates. These condensates sequester lipid droplets and impair their turnover, indicating disruption of cellular lipid homeostasis. Mitochondria in close proximity to αSyn condensates exhibit reduced membrane potential and increased mitophagy. Correlative light and electron microscopy further reveals αSyn oligomers associated with mitochondrial membranes displaying structural abnormalities. Together, these findings identify lipid droplets as drivers of aberrant αSyn phase separation and suggest that lipid droplet-rich condensates contribute to mitochondrial dysfunction and impaired energy homeostasis. Given the enrichment of lipid droplets within neuromelanin-containing dopaminergic neurons of the substantia nigra, this mechanism may be relevant to the selective neuronal vulnerability observed in Parkinson’s disease.
Reproduced under the paper's license (CC BY), from the paper cited above.
Repositories
Its files are read in the Code ↔ Paper reader above, with 10 matches between paragraphs and lines of code.
eleannakara/kara-lab
4ca87aa5d4dbd4fce31fd6d51e9a4028125d0687, 1 September 2026Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
6 files
- analyses_of_alpha-synucl
ein_biomolecular_condens , Jupyter, 511 lines, 2 matchesates/ 1kOA_early_inclusions/ 1kOA_earlyInclusions.ipy nb - analyses_of_alpha-synucl
ein_biomolecular_condens , Jupyter, 90 linesates/ C12_pulse_chase/ C12_3K_converter.ipynb - analyses_of_alpha-synucl
ein_biomolecular_condens , Jupyter, 658 lines, 2 matchesates/ C12_pulse_chase/ C12_pulse_chase.ipynb - analyses_of_alpha-synucl
ein_biomolecular_condens , Jupyter, 325 lines, 3 matchesates/ C12_pulse_chase/ pulse_chase_lipid_drople t_analysis.ipynb - repository limit reached (2,000 files or 30 MB): the rest is at the source (106 files)
- LICENSE, License, 21 lines
- README.md, Text, 7 lines
sunghoojung/segment-classify-pipeline
9ce7427cfbb838ad34a3ca98d73b1ba5077c48ed, 30 January 2026Availability: 1 check, the latest on 27 September 2026: the link answers
- 27 September 2026: the link answers
8 files
- example.ipynb, Jupyter, 148 lines, 2 matches
- inclusion_pipeline/
__init__.py , Python, 51 lines - inclusion_pipeline/
classification.py , Python, 195 lines - inclusion_pipeline/
pipeline.py , Python, 403 lines - inclusion_pipeline/
preprocessing.py , Python, 60 lines, 1 match - inclusion_pipeline/
segmentation.py , Python, 84 lines - inclusion_pipeline/
utils.py , Python, 80 lines - README.md, Text, 199 lines
The paper's code and data availability statement is in the Data section.
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 11 scripts, each with its path and the digest of its content;
- 10 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
Datasets cited
- biostudies:S-BIAD3320, at BioStudies; found in “Data availability”
- ebi.ac.uk/
emdb/ , at EMBL-EBI; found in “Data availability”emd-76979 - ebi.ac.uk/
emdb/ , at EMBL-EBI; found in “Data availability”emd-76980 - ebi.ac.uk/
emdb/ , at EMBL-EBI; found in “Data availability”emd-76981 - ebi.ac.uk/
emdb/ , at EMBL-EBI; found in “Data availability”emd-76983
Other data links
- ebi.ac.uk/
biostudies/ , EMBL-EBI; found in the text, “Author contributions”sourcedata
Data availability
Python code used in data analysis in this manuscript has been posted publicly on GitHub: https://
The source data of this paper are collected in the following database record: biostudies:S-SCDT-10_103
Reproduced under the paper's license (CC BY), from the paper cited above.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 27 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 28 authors, 2 keywords, 11 MeSH terms, 11 funders, 72 references, 2 RRIDs.
Cite
This paper
Cevallos, J., Eubanks, E., Jung, S., Huang, Y., Guadagno, E., Jaber, N., Xia, Y., Wang, J., Wang, H., Suvvari, N. R., Doshi, A., Ravinutala, N., Mosera, A., Hsu, T., Mody, J., Sacks, B., Narayan, A., Smith, B., Wang, M., . . . Kara, E. (2026). Lipid droplets promote aberrant liquid-liquid phase separation of alpha-synuclein impairing energy homeostasis. EMBO reports, 27(15), 4299-4331. https://
BibTeX
@article{cevallos2026lip
author = {Cevallos, Jose and Eubanks, Elena and Jung, Sunghoo and Huang, Yiming and Guadagno, Elyse and Jaber, Nora and Xia, Yuzhou and Wang, Jinying and Wang, Huan and Suvvari, Neeharika Rao and Doshi, Aryan and Ravinutala, Nitya and Mosera, Alejandro and Hsu, Timothy and Mody, Jiya and Sacks, Benjamin and Narayan, Anvi and Smith, Breanna and Wang, Maia and Gottapu, Meghana and Alnakhala, Heba and Ramalingam, Nagendran and Tripathi, Arati and Bartels, Tim and Dettmer, Ulf and Shi, Zheng and Dai, Wei and Kara, Eleanna},
title = {{Lipid droplets promote aberrant liquid-liquid phase separation of alpha-synuclein impairing energy homeostasis}},
journal = {EMBO reports},
year = {2026},
month = jul,
volume = {27},
number = {15},
pages = {4299--4331},
publisher = {Nature Publishing Group},
issn = {1469-221X},
doi = {10.1038/
url = {https://
pmid = {42393234},
pmcid = {PMC13458734}
}
RIS
TY - JOUR
AU - Cevallos, Jose
AU - Eubanks, Elena
AU - Jung, Sunghoo
AU - Huang, Yiming
AU - Guadagno, Elyse
AU - Jaber, Nora
AU - Xia, Yuzhou
AU - Wang, Jinying
AU - Wang, Huan
AU - Suvvari, Neeharika Rao
AU - Doshi, Aryan
AU - Ravinutala, Nitya
AU - Mosera, Alejandro
AU - Hsu, Timothy
AU - Mody, Jiya
AU - Sacks, Benjamin
AU - Narayan, Anvi
AU - Smith, Breanna
AU - Wang, Maia
AU - Gottapu, Meghana
AU - Alnakhala, Heba
AU - Ramalingam, Nagendran
AU - Tripathi, Arati
AU - Bartels, Tim
AU - Dettmer, Ulf
AU - Shi, Zheng
AU - Dai, Wei
AU - Kara, Eleanna
TI - Lipid droplets promote aberrant liquid-liquid phase separation of alpha-synuclein impairing energy homeostasis
T2 - EMBO reports
J2 - EMBO Rep
PY - 2026
DA - 2026/
VL - 27
IS - 15
SP - 4299
EP - 4331
SN - 1469-221X
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "Lipid droplets promote aberrant liquid-liquid phase separation of alpha-synuclein impairing energy homeostasis",
"container-title": "EMBO reports",
"author": [
{
"family": "Cevallos",
"given": "Jose"
},
{
"family": "Eubanks",
"given": "Elena"
},
{
"family": "Jung",
"given": "Sunghoo"
},
{
"family": "Huang",
"given": "Yiming"
},
{
"family": "Guadagno",
"given": "Elyse"
},
{
"family": "Jaber",
"given": "Nora"
},
{
"family": "Xia",
"given": "Yuzhou"
},
{
"family": "Wang",
"given": "Jinying"
},
{
"family": "Wang",
"given": "Huan"
},
{
"family": "Suvvari",
"given": "Neeharika Rao"
},
{
"family": "Doshi",
"given": "Aryan"
},
{
"family": "Ravinutala",
"given": "Nitya"
},
{
"family": "Mosera",
"given": "Alejandro"
},
{
"family": "Hsu",
"given": "Timothy"
},
{
"family": "Mody",
"given": "Jiya"
},
{
"family": "Sacks",
"given": "Benjamin"
},
{
"family": "Narayan",
"given": "Anvi"
},
{
"family": "Smith",
"given": "Breanna"
},
{
"family": "Wang",
"given": "Maia"
},
{
"family": "Gottapu",
"given": "Meghana"
},
{
"family": "Alnakhala",
"given": "Heba"
},
{
"family": "Ramalingam",
"given": "Nagendran"
},
{
"family": "Tripathi",
"given": "Arati"
},
{
"family": "Bartels",
"given": "Tim"
},
{
"family": "Dettmer",
"given": "Ulf"
},
{
"family": "Shi",
"given": "Zheng"
},
{
"family": "Dai",
"given": "Wei"
},
{
"family": "Kara",
"given": "Eleanna"
}
],
"container-title-short":
"volume": "27",
"issue": "15",
"page": "4299-4331",
"DOI": "10.1038/
"PMID": "42393234",
"PMCID": "PMC13458734",
"ISSN": "1469-221X",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
7,
2
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.1016/j.nbd.2026.107379 [code]
- DYRK1A and Parkinson's disease, facts and hypotheses.Journal: Neurobiology of diseaseIn common: pandas, Matplotlib, NumPy, Parkinson's, cellular / molecular, 4 references
- [2] doi:10.1371/journal.pcbi.1014571 [code]
- SynAPSeg: A novel dataset and image analysis framework for deep learning-based synapse detection and quantification.Journal: PLoS computational biologyIn common: Cellpose, scikit-image, Pillow, 4 other tools
- [3] doi:10.1038/s41467-026-72130-3 [code]
- Retinoic acid drives cell fate specification, maturation and retinal regionality in human retinal organoids.Journal: Nature communicationsIn common: Cellpose, scikit-image, Pillow, 3 other tools
- [4] doi:10.1038/s42003-026-10063-9 [code]
- Conserved Kir channel mechanisms governing intrinsic excitability in human and rodent parvalbumin neurons.Journal: Communications biologyIn common: Cellpose, scikit-image, Pillow, 3 other tools, cellular / molecular
- [5] doi:10.1038/s41586-026-10323-y [code]
- Genetically encoded assembly recorder temporally resolves cellular history.Journal: NatureIn common: Cellpose, scikit-image, Pillow, 3 other tools, cellular / molecular
- [6] doi:10.1126/sciadv.aeb4205 [code]
- Learning stochastic dynamics and cell-fate landscapes from single-cell snapshots via optimal transport.Journal: Science advancesIn common: Cellpose, scikit-image, PyTorch, 3 other tools, cellular / molecular
- [7] doi:10.1073/pnas.2609132123 [code]
- A human lysosomal storage disorder toolkit for decoding proteome landscapes in cortical-like and dopaminergic-like induced neurons.Journal: Proceedings of the National Academy of Sciences of the United States of AmericaIn common: Cellpose, scikit-image, PyTorch, 3 other tools, cellular / molecular
- [8] doi:10.1002/advs.202522762 [code]
- Enhancing Maturation of Human Neuromuscular Organoids via Electrical Stimulation.Journal: Advanced science (Weinheim, Baden-Wurttemberg, Germany)In common: Cellpose, scikit-image, Pillow, 3 other tools
- [9] doi:10.1016/j.isci.2026.116355 [code]
- Tera-MIND: Tera-scale mouse brain simulation via spatial mRNA-guided diffusion.Journal: iScienceIn common: Cellpose, Pillow, PyTorch, 3 other tools, cellular / molecular
- [10] doi:10.1002/advs.202515887 [code]
- An Open-Source Pipeline for Calcium Imaging and All-Optical Physiology in Human Stem Cell-Derived Neurons.Journal: Advanced science (Weinheim, Baden-Wurttemberg, Germany)In common: Cellpose, scikit-image, PyTorch, 3 other tools
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 2 repositories of the authors' code, each at its verified commit and with its license, 11 scripts, and 10 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:9d1d520cb336c6dd…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
