**This project is still not production-ready. Questions, suggestions and pull requests are highly welcome.**

[![Backers on Open Collective](https://opencollective.com/midorirb/backers/badge.svg)](#backers) [![Sponsors on Open Collective](https://opencollective.com/midorirb/sponsors/badge.svg)](#sponsors)

![Logo and Slogan](https://github.com/midori-rb/midori.rb/raw/master/.resources/slogan.png)

## Description

Midori is a Ruby Web Framework, providing high performance and proper abstraction.

### Requirements

- **Ruby** >= 3.0.0.rc1

## Installation

```bash
gem install midori.rb
```

**With Bundler**

```ruby
gem 'midori.rb'
```

```bash
bundle install
```

## FAQ

### Name

The name **midori** comes from **midori machi**, which was the place I stay on my first travel to Tokyo.

### Semantic Versioning

Version consists of four numbers:

|                 |     Milestone     |          Major           |    Minor    |  Patch   |
| --------------- | :---------------: | :----------------------: | :---------: | :------: |
| **Example**     |        1.         |            2.            |     1.      |    5     |
| **Explanation** | Milestone version | Incompatible API changes | Add feature | Fix bugs |

**Note: Before version v1.0, there's no minor version API compatible ensuring.**

### Contributing

See [Contributing Guidelines](CONTRIBUTING.md) before you leave any comment.
This project exists thanks to all the people who contribute.

[![Contributors](https://opencollective.com/midorirb/contributors.svg?width=890)](https://github.com/midori-rb/midori.rb/graphs/contributors)

### Tutorial & Example

There is an unfinished tutorial available [here](https://github.com/midori-rb/midori-tutorial).

There is also an example showing how to use midori with a todo-list web app available [here](https://github.com/midori-rb/midori-todo-example).

## Roadmap

**Development roadmap has been moved [here](https://github.com/midori-rb/midori.rb/wiki/Roadmap).**


**Detailed release notes for published versions can be seen [here](https://github.com/midori-rb/midori.rb/releases).**

## Midori 2 Goals

1. Support HTTP/2
2. Support RPC/ZeroMQ Based Server
3. Add MVC abstraction example with scaffold
4. Improve structure for fitting [AutoFiber](https://bugs.ruby-lang.org/issues/13618)
5. More examples on using midori

## Backers

Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/midorirb#backer)]

<a href="https://opencollective.com/midorirb#backers" target="_blank"><img src="https://opencollective.com/midorirb/backers.svg?width=890"></a>


## Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/midorirb#sponsor)]

<a href="https://opencollective.com/midorirb/sponsor/0/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/1/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/2/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/3/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/4/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/5/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/6/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/7/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/8/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/midorirb/sponsor/9/website" target="_blank"><img src="https://opencollective.com/midorirb/sponsor/9/avatar.svg"></a>


