Amazon アフィリエイトテスト
カントリーマアム
異体字を正字体に変換するgem作った。
異体字が名前に含まれてしまっていて、困るときに使う。
クローズドな環境でのナレッジ共有ツールを自作しているという話 -> 現在プライベートにしてます。
[追記]
現段階では前職に迷惑がかかる恐れがあったので非公開にしました。
Starをして下さったみなさんありがとうございました。
全く別のプロダクトになったと思った時再度公開したいと思います。
[以下は元の記事]
久しぶりに記事を書いたので現状を報告すると、先日の1月10日付でIncrementsを退社しました。
今はインディーズゲームして遊んでます。PZとFTL楽しいです。
そんなことはどうでも良くて。
先日から数人で作業をするため、PivoralTracker + HipChatで情報共有していました。
しかし、それらのツールだけだと整理された情報の共有が出来ないので、Qiita:Teamで情報共有しようと思ったのですが、"wiki"と"スマホで閲覧"したかったので自作してOSSにしました。
機能について
実装済みの機能は以下です。
レスポンシブにすることでスマホでも情報を読めるようになるのはやっぱり便利。
Heroku, Sqaleで動作するのも確認済みです。
レスポンス速度が早いSqaleでの運用がおすすめです。
技術的な話
Rails 4.0.2 + Ruby 2.1で開発&動作しています。
何の機能を実装するのも基本的にgemがあるものはそれらを用いました。
そのためcontroller, modelがかなり薄くなってます。複雑な事をしていないという方が大きいかも。
(定番ですがdevise, devise_invitableはログイン周りの実装を大分楽にしてくれます)
デザインはbootstrap3を使いました。bootstrapを用いてもデザインは難しい。
markdown parserにkramdownを使用してましたが、ドキュメントが豊富ということもありredcarpetに変更しました。
redcarpetは昨年作者がメンテナーを募集していましたが、無事メンテナーも見つかり引き続き開発が続いてます。
これから
既に自分で使い始めていて使いにくい箇所を最優先で改善していこうと思います。また並行して下記の作業していきたい。
- 検索機能
- 現状実装していなくて不便
- markdown preview
- Qiita:Teamと比べるとまだまだ書きにくい
- リアルタイムプレビューしたいが開発効率とのバランスを考えたい
- Vagrant box もしくは Docker base imageを作成
- 社内で動かしてみたいという声を頂いたため
- 技術的に強く興味がある
- 英語対応
- view側で日本語を使用していないので、localeファイルを追加で英語対応はできる
- gemによるプラグイン化
- これはまだ先の話
- コア部分の実装を小さくし、欲しい機能だけgemで追加する仕組みにしたい
GitHubのStarを頂けたらモチベーションが上がり開発が加速しますので是非ともStarをお願いします :D
camelmsa/connect
issue・PR頂けると嬉しいです!
Incrementsに入社しました。
色々考えてQiitaを運営するIncrementsに入社しました。
相談にのって頂いた諸先輩方有り難うございます。
第1号社員としてcamelmasaが++erに入社!そして会社設立1周年、オフィス移転のお知らせ
応援お願いします!
新オフィスに色々置きたいが、お金がない…。
wishlistを作成したので、宜しくお願いします!
(ビールとか欲しいです)
kamadoを退職しました。
mixiへ全株式を売却したのを転機と捉え、本日付けでkamadoを退職しました。
フリーで仕事をしていたのが2010年の10月までで、そこから社員1号として2年4ヶ月kamadoにコミットしてました。
関係者の皆様
kamado在籍中は大変お世話になりました。
これからも日本のIT業界に貢献していきますので、今後とも宜しくお願い申し上げます。
rails pluginコマンドで簡単に出来るgemの作成方法。
gemを作成する際、rails pluginコマンドを使用していますが、余り使われていない、記事にされていない印象を受けたので記事を書きました。
Rails Engine, rails pluginコマンドについて詳細はこちらです。
http://d.hatena.ne.jp/passingloop/20110801/p1
上記の記事にはRails Engineの作成する方法にrails pluginコマンドが書いてあります。
(実際にはrails plugin new gem_name --mountable)
その際一緒にGemfileも作成されるので、gem pushするだけで実は簡単にgemの登録が出来てしまいます。
実際にやってみる
今日githubのexploreにあったdaneden/amimate.cssをGemfileに1行追加して簡単に利用出来るgemを作成し、Rubygems.orgにpushしてみます。
(https://github.com/daneden/animate.css)
Rails Engineの作成
まずrails pluginコマンド
rails plugin new animate-rails --mountable
mkdir -p vendor/assets/stylesheets/animate cd vendor/assets/stylesheets/animate wget https://raw.github.com/daneden/animate.css/master/animate.min.css mv animate.min.css index.css
animate-rails.gemspecの編集
$:.push File.expand_path("../lib", __FILE__) # Maintain your gem's version: require "animate-rails/version" # Describe your gem and declare its dependencies: Gem::Specification.new do |s| s.name = "animate-rails" s.version = AnimateRails::VERSION s.authors = ["Masahiro Saito"] s.email = ["camelmasa@gmail.com"] s.homepage = "https://github.com/camelmasa/animate-rails" s.summary = "animate.css for rails" s.description = "animate.css for rails" s.files = Dir["{lib, vendor}/**/*"] + ["MIT-LICENSE", "Rakefile", "README.rdoc"] s.test_files = Dir["test/**/*"] s.add_dependency "rails", "~> 3.2.9" # s.add_dependency "jquery-rails" # s.add_development_dependency "sqlite3" end
”TODO”の文言が入っている箇所を編集し、s.filesにvendorを追加します。
サンプルプロジェクトの作成
プロジェクトの作成
rails new animate-rails-sample
Gemfileに追加
gem 'animate-rails', path:"../animate-rails"
app/assets/stylesheets/application.cssに1行追加
*= require animate
サーバーの立ち上げ
rails s
ブラウザからhttp://localhost:3000/assets/animate/index.css?body=1にアクセス
animate.cssが表示されるのが確認できました。
Rubygems.orgに登録する
次にRubygemsに登録します。
animate-railsのディレクトリに移動。
下記コマンドを実行
gem build animate-rails.gemspec WARNING: description and summary are identical Successfully built RubyGem Name: animate-rails Version: 0.0.1 File: animate-rails-0.0.1.gem
WARNINGはdescriptionとsummaryが一緒の場合に表示されます。
最後にRubygems.orgに登録。
gem push animate-rails-0.0.1.gem
https://rubygems.org/gems/animate-rails
無事登録出来ました。
まとめ
rails pluginコマンドで簡単にgemを作成してみました。
後はgithubに登録すると色々指摘が貰えて幸せになれそうですね。
git init hub create animate-rails git add . git ci -m 'first commit' git push origin master
今回のgemはこちらにあります。
https://github.com/camelmasa/animate-rails
Subtle Patternsで提供されている画像を簡単に扱えるgem subtlepatternsを作成しました。
id:ken_c_loさんが作成された”ズルいデザインテクニック”の中で紹介されていたSubtle Patternsが仕事でもプライベートでも使用していて、便利だなーと思ってたので、もっと簡単に利用出来る様gemにしました。
参考 http://d.hatena.ne.jp/ken_c_lo/20121115/1353004699
使い方
githubのREADMEに書いてありますがこちらにも記します。
Railsへのインストール方法
Gemfileに追加
gem "subtlepatterns"
コマンドを実行
bundle install
application.cssに追加
*= require subtlepatterns/prefix
CSSのクラス名にprefix(subtlepattern)が要らない場合
*= require subtlepatterns
これでインストール完了です。
使用方法
後はHTML内で指定していきます。
<body class="subtlepattern_xv">
や
<div class="subtlepattern_zigzag">
と指定します。
すると、background-imageにSubtle Patternsの画像が表示されます。
CSSのクラス名一覧はgithubのREADMEを参照してください。
https://github.com/camelmasa/subtlepatterns