WEBrickとSqlite3で動作するシンプルなWebアプリケーションが作れる、MakanaiというフレームワークRubyで作りました👩💻
なぜ作ったか?
RailsやSinatraといったRuby製の素晴らしいWebアプリケーションフレームワークが世の中にあるなか、なぜMakanaiと作ったかというと、
という仮説のもと開発しました。
Makanaiは最低限の機能しかなくシンプル、かつrackとrakeとsqlite3の3つのGemしか使っていないピュアRubyで書かれていて、前提知識等が無くても読みやすいんじゃないかなと思います。
Makanaiの使い方
Hello World
Hello Worldまでの手順はシンプルで、Gemfileにmakanaiを追加してbundle installして、下記を記載したapp.rbを作成するだけです。
require 'makanai/main' router.get '/' do 'Hello Makanai!' end
あとはruby app.rbを実行してブラウザでアクセスすれば「Hello World」が表示されます🌏
提供している機能
Makanaiでは下記の機能を提供しています。
- URLとリクエストメソッドをもとに特定の処理を実行するRouting機能
migration配下の特定のsqlファイル及びすべてのsqlファイルを実行するmigration機能findやallといった機能を提供するシンプルなORM機能views配下に配置されたerbファイルをパースしてレスポンスを生成するRender機能
詳しい使い方はReadmeを読んでみてください📝
makanai/README.md at master · Madogiwa0124/makanai · GitHub
おわりに
今回はオレオレフレームワークMakanaiを紹介しました。まだまだな部分ばかりですが、とりあえず自分で作ったフレームワークをGemとして公開できたのは勉強になりました。
作ってみてわかったのはSinatraやRailsといったフレームワークは本当に良くできているなと💦
これからも色々とメンテナンスしていってできることを増やしていこうと思います🙋
またRubyを使って自分でオレオレフレームワークを作ってみたい人がいたら下記記事に作り方とかまとめているので良かったら💻