About pyFuRNAce

  • 🧩 Motif-based assembly: Build RNA structures using a rich, expandable library of motifs including stems, dovetails, kissing loops, aptamers, and ribozymes.

  • 🎨 GUI & Real-time 3D Visualization: Interactive blueprint editor and real-time 3D rendering via Streamlit and oxView.

  • 🔄 Integrated Workflow: Design, generate, convert, and prepare your RNA origami in one unified interface.

  • 🧬 Sequence Generation & Optimization: Built-in support for sequence folding (Revolvr + ViennaRNA).

  • 🧪 Primer & Template Design: Includes tools for DNA conversion, promoter addition, and primer calculations.

  • 💻 Python Scripting API: Automate complex designs or build at scale using a programmable interface.

Web Application

To run locally, check the installation instructions.

Visit the hosted version: pyfurnace.de or pyfurnace.streamlit.app

https://static.streamlit.io/badges/streamlit_badge_black_white.svg

Modules

  • Design: Create and edit RNA blueprints. Visualize in 3D.

  • Generate: Use inverse folding to produce target-matching sequences.

  • Convert: Convert to DNA templates, add promoters, analyze properties.

  • Prepare: Design primers and generate oxDNA simulation inputs.

Python API

import pyfurnace as pf

line1 = [pf.TetraLoop(),
        pf.Stem(7),
        pf.Dovetail(-2, up_cross=False),
        pf.Stem(6),
        pf.KissingDimer(),
        pf.Stem(6),
        pf.Dovetail(-2, up_cross=False),
        pf.Stem(7),
        pf.TetraLoop(True),
        ]

line2 = [pf.TetraLoop(),
        pf.Stem(7),
        pf.Dovetail(-2, down_cross=False),
        pf.Stem(10),
        pf.start_end_stem(),
        pf.Stem(10),
        pf.Dovetail(-2, down_cross=False),
        pf.Stem(7),
        pf.TetraLoop(True),
        ]

origami = pf.Origami(line1, line2, aling='center')

print(origami)
print(origami.structure)
print(origami.sequence)

Citation

If you use pyFuRNAce in your research, please cite:

Monari, L. et al. PyFuRNAce: an integrated design engine for RNA origami. Nat Commun 16, 10815 (2025). https://doi.org/10.1038/s41467-025-66290-x.

License

GPL-3.0 License — GNU General Public License v3.0

https://img.shields.io/badge/License-GPL%20v3-lightgrey.svg

Acknowledgements

This work was supported by the ERC Starting Grant ENSYNC (No. 101076997) and Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under CRC 392 and CRC 1638. This work was supported by a Research Grant from HFSP (Ref.-No: RGP003/2023, DOI: https://doi.org/10.52044/HFSP.RGP0032023.pc.gr.168589). The authors thank the Max Planck Society for access to computational resources and the Alfried Krupp von Bohlen und Halbach Foundation. E.P. was supported through state funds approved by the State Parliament of Baden-Württemberg for the Innovation Campus Health + Life Science Alliance Heidelberg Mannheim. We thank Dr.~Cody Geary for his feedback on the user interface design. We thank Dominic Kempf for his feedback on software development and testing.