Twitter authentication with OmniAuth¶ ↑ OmniAuth provides several strategies (released as gems) that provides authentication for a lot of systems, such as Facebook, Google, GitHub, and many more. Each strategy is a Rack middleware, so it's very easy to integrate with Sinatra. This recipe will show you how to add user authentication to your Sinatra application using Twitter as your authentication p
A Sinatra-Sequel-RSpec Template Apr 25 rgraffwork rspec, sequel, sinatra 6 Comments I’m just getting to the fun part of writing an app, the part where I’m actually writing the app and not just trying to get my environment setup. A couple days ago, I would’ve loved to have found a post that explains how to get Sinatra, Sequel, and RSpec working together plus have all the files organized so that I c
Ruby,Rubygems,MongoDBはインストールされているものとする MongoDBのインストールについてはCentOSであれば前にちょっと書いた 過去の記事:CentOS5.5にMongoDBをインストールする - chulip.org インストール Bundlerを使用して必要なGemをインストールする。 なおMongoDBのORMとしてMongoidを使用する $ gem install bundlerGemfile source :rubygems gem 'sinatra' gem 'mongoid' gem 'bson_ext' gem 'SystemTimer' #1.8.7だけ必要だったぽい group :test do gem 'rspec' gem 'rack-test' end$ bundle install bson_extとSystemTimer bson
Heads-up: Dashing still works great, but is no longer maintained. Read up about it over here. You can also use the fork of the project. Dashing is a Sinatra based framework that lets you build beautiful dashboards. Check out a demo over here. Here's another one, optimized for 1080p screens. Key features: Use premade widgets, or fully create your own with scss, html, and coffeescript. Widgets harne
Sleipnir for Mac、Sleipnir Mobile for iPhone/iPad 開発担当の福井です。 今回はモバイルアプリの開発時に役に立つ、Sinatra を紹介させていただきます。 アプリを開発するとき、連携する Web API の実装がまだなくて実装を進められない、API の実装と並行してアプリを実装してはみたけど、API と連携してみると全然動かなかった、そんな経験をしたことはありませんか?Web API が完成していないけど、アプリのリリースは遅らせることができないというのはよくあるシチュエーションだと思います。そんなときは、Sinatra の導入を検討してみてはいかがでしょうか。 Sinatra とは? Sinatra といえばフランク・シナトラ…ではなくて Ruby 製 Web アプリケーションフレームワークです。Ruby で Web アプリケーションという
先日書いた、麻雀スクリプトをSinatraに乗っけてみました。 ・rubyで麻雀の待ちを出力 - うんたらかんたら日記 ・麻雀スクリプトのテストコード - うんたらかんたら日記 amachang作の↓をみて 清一色メーカー rubyでもsinatra使えばサクッとできる(らしい)よね、 と思い立ちチャレンジしてみました。 ついでに、sinatraでRSpec動かすのと、 ちゃんと使ったことの無いhaml/saasをこれを機に使ってみました。 ソース rochefort/majang_sina - GitHub herokuデプロイ先 麻雀聴牌チェッカー こんなかんじ。 感想 「また、つまらぬものを...」感がありますが、個人的にはいろいろ試せて良かったです。 ほとんどデザイン入れて無いので、haml / saasの醍醐味は味わえてませんが saasはある程度ルール決めれば、cssは結構キレ
RubyのWebApplicationFrameworkを読む会を新宿のルノアールで行った。 この日は@ainame氏を中心にSinatraを5時間ほど読んで、 Sinatra起動からRouting定義、setによる設定、 RequestとResponseの生成、Tiltによるテンプレート生成周りまで読んだ。 HTMLをrenderするところまでは至れなかったけども、 Sinatraの黒魔術をガンガン学びながら挙動を追えたのが良かったと思う。 コードリーディング、refe・pry・pry-docのおかげでだいぶ捗ったと思う。 大体/def method_name/で検索して移動して挙動を読み、 元の場所に戻る、の繰返しでSinatra::Baseのrunから始まる挙動を追った。 以下メモ。 sinatra/main.rb About ClassicStyleを利用している場合に呼ばれる 非
<p> githubにはwebhooks機能があり、これを利用することで、git pushすると同時に様々な処理を実行することができます。たとえば、サイトをgithubで丸ごと管理している場合、pushと同時にサイトを更新することも可能です。</p> 僕は趣味のとんかつサイトTON.KATSUma.tvを遊びで作っていますが、このサイトは今はgithubで管理して、手元でgit pushするとサイトが更新される仕組みにしています。id:viverさんが素晴らしい記事を書いて下さっていますが、今回はその復習的備忘録です。 <h2>Post-Receive URLs</h2> <p>webhooks機能を利用するためには、githubから送信されるHTTP POST命令の処理するWebサーバが必要になります。 僕は<a href="http://blog.katsuma.tv/2012/02/
1. Sinatra とか Padrino とかで テストをどうしているか? - Padrino 黒ミサ in 神泉 - 2011/10/29 @ 神泉 Uchio Kondo (@udzura) 2. 近藤うちお(@udzura) ● Rubyist(2年半ほど) ● Groovyに挫折 ● 現在Haskellを順調に挫折 柴犬のあくび ● 富士マガ所属(ご近所)、 雑誌を定期購読で買ってね! ● カルマ: Rack, Sinatra, Padrinoあたり Rails3, TDD, Linux, アジャイルとかも興味はあるんですよ…… 3. 近藤うちおさんのworks ● ブロッグ http://blog.udzura.jp/ ● Padrino 日本語サイト翻訳リーダー ● Padrino framework contributor ● 自称、 Padrino framework エ
Warden はかなり好き(PadrinoというかSinatraでも使えるし)。でも、僕もDeviseはやり過ぎだと思う派だなあ 認証関連の画面遷移やURLが Devise の規約にぴったりハマるケースっていくらなんでも稀だと思うし、カスタマイズするとなると結構ソース追わないといけなくなって結局だるい… env['warden'] に一通り入ってるのは、少しかっこ悪いかもしれないけど便利。 認証とかリダイレクト処理とかガラケー対応とか、はアプリケーション本体ではなくRack Middleware で実現したいな~と言う facebook でこんなことをつぶやいた。 僕は Rack とその関連技術が凄く好きで、もっと勉強する人が増えてほしいと思っているのだが、何で好きなのかとかを整理してみた。 Good Stuff 結合度が低くなる。なので: Rackでとある機能(認証など)を実現すれば、そ
どうも、逆流性食道炎です。2月初めに胃痛で病院に行き、翌日の胃カメラで診断されました。ストレス社会に生きる皆様も、胃腸の健康には十二分にご留意ください。くれぐれも。くれぐれも。 薬物の効能によるものか症状はだいぶ緩和されているのですが、時には病める日もあります。そんな胃の状態を教えてくれるAPIをつくりました。 http://marutanm-stomach.heroku.com/condition 稚拙ですね。果たして、これから機能追加はなされるのでしょうか? ぶっちゃけ私の胃の状態なんて誰も知ったことじゃないでしょうが、PadrinoとMongoDBを使った簡単すぎるチュートリアルとして、手順を追ってみます。URLでお分かりのように、最終的にはHerokuにデプロイします。 基本的には公式にあるチュートリアルの劣化版ですが、ActiveRecordではなくMongoDB、ORMにMon
Sinatra アプリケーションを Heroku にデプロイする First Heroku とは Ruby 版 PaaS サービスのことである. 一般的には Ruby on Rails をデプロイできるサーバとして有名なようだが,Rack ベースの Web アプリケーションの動作もサポートしている. そこで今回は Sinatra のアプリケーションを Heroku にデプロイする. 基本的に Heroku の Quickstart Guide を参考に 進めて行く. Install Heroku にアカウントを登録する Create a Heroku Account へアクセスする. メールアドレスを入力すると Confirmation email sent. Check your inbox と表示 されるのでメールボックスをチェックし Confirmation メール本文中のリンクへア
最近、EC2とかGAEとか、簡単Webデプロイサービスが流行りですが、ようやく無料で簡単に使えるRubyのサービスも出たようです。それが、Heroku(ハーオークと読むらしい)。無料で使える環境は、容量5MBと少ないですが、個人で簡単なサービスをするだけなら十分かと思います。SSLも使えるみたいですので。 Herokuで容量・性能以外で選べるサービスはこんな感じ。 詳しいことは参考リンク先にお任せするとして、ちょっくら試してみました。 必要な環境 最低限、以下が必要です。 Herokuアカウント Git SSH鍵 gemで以下も入れておきましょう。 $ sudo gem install heroku sinatra 手順 1. 適当にディレクトリを切って、以下のファイルを作ります。 myhello.rb require 'rubygems' require 'sinatra' get '/
Sub URIで動かすとは? ドメイン単位ではなく、ドメイン配下のディレクトリをルートとして環境を構築する場合の話です。 例えば、 http://example.com/ をアプリケーションのルートとする場合ではなく、 http://example.com/hogehoge/ の hogehoge/ をアプリケーションのルートとして扱う場合です。 何がいいたい? ぶっちゃけ、ドメインを取るまでもない sinatra アプリを、既存のドメイン内で動かしたいんだよってこと。 ディレクトリ構成 設定前に、事前にディレクトリ構成を書いておくと Sinatra アプリ /path/to/cgi-bin/sinatra_app/public /path/to/cgi-bin/sinatra_app/tmp /path/to/cgi-bin/sinatra_app/config.ru /path/to/
はじめに 第7回はRails以外のWebフレームワークの簡単な紹介と、SinatraでHello Worldアプリケーションを動かすところまでを解説しました。今回はSinatraで実際のアプリケーションを作り、SequelとHamlという2つのライブラリを紹介します。 Sinatraの特徴は、CGIスクリプトのようにファイル一つからアプリケーションが書ける気軽さです。CGIスクリプトといえば、代表的なものは何と言っても掲示板(BBS)です。そこで、今回はSinatraで掲示板アプリを作ってみました。ソースコードが少し長めなので、githubにて全文を公開しています。適宜参照しながら読み進めて下さい。ファイル構成は以下のようになっています。 start.rb アプリケーションの本体。 model/comment.rb 掲示板の書き込みを表すモデルの定義。 view/index.haml トッ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く