Skip to content

cschlaffner/PROTzilla

Repository files navigation

PROTzilla

backend frontend coverage badge

PROTzilla is an open-source and browser-based tool for downstream proteomics MS analysis, enabling non-programmers to preprocess data, perform analyses, and generate publication-ready plots. The shareable, reproducible workflows and the integration of knowledge databases support automated analysis and transparent reporting in proteomics research.

⚙️ Deploy PROTzilla

Regular setup (production deployment)

We have prepared user guides for Windows, macOS and Linux. We have also prepared a guide for Windows Server 2012.

Development (Docker)

  1. Clone the PROTzilla repository
    git clone https://github.com/cschlaffner/PROTzilla.git
  2. Enter repository folder
    cd PROTzilla

Before running, make sure you have Docker and Docker Compose installed.

  1. Run docker compose up vite (or docker-compose up vite on old versions). Should you need to rebuild the image, add the --build flag after up
    You can optionally add -d to detach protzilla from your shell
  2. (optional) If you want persistent user data storage, uncomment the volume specification in the docker-compose.yml and adjust for your system. Make sure to copy the repo contents in /backend/user_data over to your desired persistent directory first.
  3. Go to the web UI
  4. Hack away and see the changes reflected instantly!
  5. (optional) In VS Code, go to the debugging tab and select Python Debugger: Remote Attach to enable listening for easy debugging in your IDE! For other setups, debugpy is listening on its default port 5678

🦖 Start & use PROTzilla

If your deployment was successful, open the application on http://127.0.0.1:8000/. After that, you can start using PROTzilla for your research! 🦖

💡 Quick Introduction on how to use PROTzilla in the browser

Workflows in PROTzilla are blank templates that define a predefined sequence of parameterized steps, each step being a computation that takes data as input and produces according results. Steps are organized into Importing, Preprocessing, Analysis, and Integration sections. For your analysis, you can select a workflow to create a run, import your real data (and add extra steps if needed), then execute it. You can execute a run step by step or in one go with a single click on Calculate in the last step. PROTzilla also lets you generate and download custom plots and seamlessly integrate UniProt databases into your analysis.

Tip

For more details, please see the user guide in our wiki.

💡 How to use PROTzilla via the command line

A command line based runner for PROTzilla workflows is available via runner_cli.py. It allows you to run PROTzilla workflows from the command line, which can be useful for batch processing or automation tasks. The runner calculates a given dataset on a given workflow without the need for a graphical user interface.

A guide on how to use the Runner is available in our wiki.

🔍 Further information: Development

The PROTzilla backend is built with Python/Django and Node.js (managed via pnpm) is used for the frontend.
To open PROTzilla in development mode, see the docker steps

Additionally, you can launch the storybook by docker compose up --build storybook to inspect UI components independently.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors