CINXE.COM
Hanami | Mailing List
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="description" content="Hanami - A flexible framework for maintainable Ruby apps" /> <meta name="keywords" content="hanami,hanamirb,lotus,lotusrb,web,framework,ruby,open source,oss,os,software,free,free software,architecture,fast,lightweight,testing,tdd,bdd,test driven development,behaviour driven development,full stack,mvc,model view object,pattern,patterns,design patterns,oop,object oriented programming,testability,http,https,routing,router,http router,restful,resource,resources,convention,controller,models,repository,query,sql,interactors,two-step view,view,template,presenters,render,rendering,helpers,erb,haml,tilt,json,xml,yaml,yml,framwork,framewrok,riby,free sowftare"/> <meta name="author" content="Tim Riley"> <meta content="width=device-width, initial-scale=1.0" name="viewport" /> <link href="/atom.xml" rel="alternate" title="Hanami" type="application/atom+xml" /> <link href="/images/favicon.ico" rel="icon" type="image/ico" /> <title>Hanami | Mailing List</title> <link href="//fonts.googleapis.com/css?family=Roboto:100,300,400,700" rel="stylesheet"> <link href="//fonts.googleapis.com/css?family=Overpass:200,300,400,700" rel="stylesheet"> <link href="/stylesheets/toolkit-minimal.css" rel="stylesheet" /> <link href="/stylesheets/search.css" rel="stylesheet" /> <link href="/stylesheets/application-minimal.css" rel="stylesheet" /> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" /> <script async defer src="https://buttons.github.io/buttons.js"></script> </head> <body> <nav id="navigation" class="navbar navbar-default navbar-static-top navbar-padded app-navbar"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed p-x-0" data-toggle="collapse" data-target="#navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand text-uppercase" href="/"> <span>Hanami</span> </a> </div> <div class="navbar-collapse collapse" id="navbar-collapse"> <ul class="nav navbar-nav navbar-right text-uppercase"> <li> <a href="https://guides.hanamirb.org" target="_blank">Guides</a> </li> <li> <a href="https://docs.hanamirb.org" target="_blank">Docs</a> </li> <li> <a href="/community">Community</a> </li> <li> <a href="https://github.com/hanami" target="_blank">Source Code</a> </li> <li> <a href="/blog">Blog</a> </li> <li> <a href="/donate"><strong>馃挏 Become a Sponsor</strong></a> </li> </ul> </div><!--/.nav-collapse --> </div> </nav> <div id="hanami2" class="text-xs-center"> <div class="container"> <div class="row"> We have just released <strong>Hanami 2.2</strong>! Read the <a href="/blog/2024/11/05/hanami-220/">announcement</a>. </div> </div> </div> <div class="container"> <div class="block block-bordered-lg text-center"> <div class="container-fluid"> <p class="lead m-b-md"> Join a community of over 2,300+ developers. </p> <form action="https://hanamirb.us3.list-manage.com/subscribe/post" method="POST" class="form-inline"> <input name="u" value="dcbeefa4ba1ea9ae043857005" type="hidden"> <input name="id" value="fb3873a90f" type="hidden"> <input name="orig-lang" value="1" type="hidden"> <input type="email" class="form-control m-b" placeholder="Email Address" spellcheck="false" autocapitalize="off" autocorrect="off" name="MERGE0" id="MERGE0" value=""> <button class="btn btn-primary m-b">Subscribe</button> </form> <small class="text-muted"> By clicking "Subscribe" I want to subscribe to Hanami mailing list. </small> </div> </div> </div> <div class="block app-block-footer"> <div class="container"> <div class="row"> <div class="col-sm-2 m-b"> <ul class="list-unstyled list-spaced"> <li><h6 class="text-uppercase">Project</h6></li> <li><a href="https://github.com/hanami" target="_blank">GitHub</a></li> <li><a href="https://rubygems.org/gems/hanami" target="_blank">Rubygems</a></li> <li><a href="/status">Gems Status</a></li> <li><a href="/team">Team</a></li> <li><a href="/security">Security</a></li> <li><a href="/privacy">Privacy Policy</a></li> <li><a href="https://guides.hanamirb.org/" target="_blank">Guides</a></li> <li><a href="https://docs.hanamirb.org/" target="_blank">Docs</a></li> </ul> </div> <div class="col-sm-2 m-b"> <ul class="list-unstyled list-spaced"> <li><h6 class="text-uppercase">Community</h6></li> <li><a href="/community#code-of-conduct">Code of Conduct</a></li> <li><a href="https://discourse.hanamirb.org" target="_blank">Forum</a></li> <li><a href="https://discord.gg/KFCxDmk3JQ" target="_blank">Chat</a></li> <li><a href="https://ruby.social/@hanami" rel="me" target="_blank">Mastodon</a></li> <li><a href="https://bsky.app/profile/hanamirb.org" target="_blank">Bluesky</a></li> <li><a href="https://stackoverflow.com/questions/tagged/hanami" target="_blank">StackOverflow</a></li> </ul> </div> <div class="col-sm-2 m-b"> <ul class="list-unstyled list-spaced"> </ul> </div> <div class="col-sm-6"> <h6 class="text-uppercase">About</h6> <p> © 2014-2025 Hanami Team.<br> Released under the <a href="https://opensource.org/licenses/MIT" target="_blank">MIT License</a>. <br><br> This project was formerly known as <strong>Lotus</strong>. </p> <a class="github-button" href="https://github.com/hanami/hanami" data-size="large" data-show-count="true" aria-label="Star hanami/hanami on GitHub">Star</a> </div> </div> </div> </div> <script src="/javascripts/jquery.min.js" type="text/javascript"></script> <script src="/javascripts/toolkit.js" type="text/javascript"></script> <script src="/javascripts/application.js" type="text/javascript"></script> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-47369640-1', 'hanamirb.org'); ga('send', 'pageview'); </script> </body> </html>