> For the complete documentation index, see [llms.txt](https://docs.revoframework.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.revoframework.net/reference-guide.md).

# Reference guide

- [Configuration and boostrapping](https://docs.revoframework.net/reference-guide/configuration.md): Prior to bootstrapping a Revo application, one must first set up the framework and specify its configuration, which makes it possible to customize its behavior in a number of ways.
- [Dependency injection](https://docs.revoframework.net/reference-guide/dependency-injection.md): Like many other frameworks, Revo also builds on the principles inversion of control (IoC). For the heavy lifting, the framework uses the open-source Ninject dependency container and injector.
- [Domain building blocks](https://docs.revoframework.net/reference-guide/domain-building-blocks.md)
- [Commands and queries](https://docs.revoframework.net/reference-guide/commands-and-queries.md): The framework implements a number of facilities for working with commands, queries and for implementing CQRS.
- [Events](https://docs.revoframework.net/reference-guide/events.md): Events are one of the most powerful ways of communication used in Revo. The framework offers a few different ways for implementing an event-driven architecture.
- [Data persistence](https://docs.revoframework.net/reference-guide/data-persistence.md)
- [Database migrations](https://docs.revoframework.net/reference-guide/database-migrations.md): Database migrations in Revo are a simple feature how to version database schema.
- [Projections](https://docs.revoframework.net/reference-guide/projections.md): Projection are specialized event listeners used for materializing events published by event sourced aggregates into better usable read models.
- [Authorization](https://docs.revoframework.net/reference-guide/authorization.md)
- [Validation](https://docs.revoframework.net/reference-guide/validation.md)
- [Request life-cycle](https://docs.revoframework.net/reference-guide/request-life-cycle.md)
- [Sagas](https://docs.revoframework.net/reference-guide/sagas.md)
- [Jobs](https://docs.revoframework.net/reference-guide/jobs.md)
- [Messaging and integrations](https://docs.revoframework.net/reference-guide/integrations.md): Scale and integrate by publishing and receiving events, commands and queries using common messaging patterns, e.g. with RabbitMQ message queue (using EasyNetQ connector or Rebus service bus).
- [Multi-tenancy](https://docs.revoframework.net/reference-guide/multi-tenancy.md)
- [Testing](https://docs.revoframework.net/reference-guide/testing.md)
