# Getting Started with Modular Diffusers 🧪 **Experimental Feature**: Modular Diffusers is an experimental feature we are actively developing. The API may be subject to breaking changes. With Modular Diffusers, we introduce a unified pipeline system that simplifies how you work with diffusion models. Instead of creating separate pipelines for each task, Modular Diffusers lets you: **Write Only What's New**: You won't need to write an entire pipeline from scratch every time you have a new use case. You can create pipeline blocks just for your new workflow's unique aspects and reuse existing blocks for existing functionalities. **Assemble Like LEGO®**: You can mix and match between blocks in flexible ways. This allows you to write dedicated blocks unique to specific workflows, and then assemble different blocks into a pipeline that can be used more conveniently for multiple workflows. Here's how our guides are organized to help you navigate the Modular Diffusers documentation: ### 🚀 Running Pipelines - **[Modular Pipeline Guide](./modular_pipeline.md)** - How to use predefined blocks to build a pipeline and run it - **[Components Manager Guide](./components_manager.md)** - How to manage and reuse components across multiple pipelines ### 📚 Creating PipelineBlocks - **[Pipeline and Block States](./modular_diffusers_states.md)** - Understanding PipelineState and BlockState - **[Pipeline Block](./pipeline_block.md)** - How to write custom PipelineBlocks - **[SequentialPipelineBlocks](sequential_pipeline_blocks.md)** - Connecting blocks in sequence - **[LoopSequentialPipelineBlocks](./loop_sequential_pipeline_blocks.md)** - Creating iterative workflows - **[AutoPipelineBlocks](./auto_pipeline_blocks.md)** - Conditional block selection ### 🎯 Practical Examples - **[End-to-End Example](./end_to_end_guide.md)** - Complete end-to-end examples including sharing your workflow in huggingface hub and deplying UI nodes