# Revo Framework

## Revo Framework

- [Revo Framework documentation](https://docs.revoframework.net/readme.md)
- [Overview](https://docs.revoframework.net/general/overview.md)
- [Design overview](https://docs.revoframework.net/general/overview/design-overview.md)
- [Project structure](https://docs.revoframework.net/general/overview/project-structure.md)
- [Features](https://docs.revoframework.net/general/features.md)
- [Super-short example](https://docs.revoframework.net/general/super-short-example.md): So how does it actually look when writing an application with Revo?
- [Getting started](https://docs.revoframework.net/general/getting-started.md)
- [Example: Task list app](https://docs.revoframework.net/general/example-simple-to-dos-task-list-app.md): This quick guide walks you through recreating the simple TO-DOs (task list) app.
- [FAQ](https://docs.revoframework.net/general/faq.md)
- [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)
