---
sidebar_position: 1
---

# CherryPick — Dependency Injection for Dart & Flutter

Welcome to the documentation for **CherryPick**, a lightweight and flexible dependency injection library for Dart and Flutter.

---

## About CherryPick

CherryPick is a modular DI (Dependency Injection) toolkit designed for:
- Clean architecture
- Lightweight and intuitive API
- Powerful hierarchical scopes
- Fast synchronous & asynchronous injections
- Code generation and annotation-based configuration

Whether you build backend or Flutter apps, CherryPick will help you maintain clear and testable project structure with minimal boilerplate.

## Quick Links

- [Key Features](key-features.md)
- [Getting Started](getting-started.md)
- [Core Concepts](core-concepts/binding.md)
- [Advanced Features](advanced-features/hierarchical-subscopes.md)
- [Using Annotations](using-annotations.md)
- [FAQ](faq.md)
- [Example Application](example-application.md)
- [GitHub Repository](https://github.com/pese-git/cherrypick)

## Installation

See [Installation](installation.md) for instructions on adding CherryPick to your Dart/Flutter project.

---

CherryPick is open-source. Contributions and questions are welcome!

---