/annict

Rails 4.2とAngular.js 1.3で開発中のアニメ視聴記録サービス「Annict」です。

Primary LanguageRubyApache License 2.0Apache-2.0

Annict

Annict
見たアニメを記録して、共有しよう
http://www.annict.com


開発に参加する

新機能・改善案の話やバグの話など

開発に関わるもろもろのやり取りは、以下のサービスで行っています。

セキュリティに関わるバグの報告

anannict@gmail.com までメールをください。 Twitterなど、第三者に公開されている場所に投稿しないでもらえるとありがたいです。

Pull Requests

絶賛募集中です!以下の項目を守った上で送ってもらえると嬉しいです。

  • コーディング規約を意識したコードを書いてください
  • 新たに機能を追加したときはそのテストも追加してください
  • 既存のテストを全てパスすることを確認してください

タスク管理について

Annictでは開発に関係するタスク管理をGitHub Issuesで行っています。 各タスクは以下のラベルを紐付けて管理しています。

ラベル名 概要
Ideas システム内に取り込むことが決定していない漠然としたタスク
Ready システム内に取り込むことが決定したタスク
Working 現在取り組んでいるタスク
Priority: 1 優先度が高いタスク
Priority: 2 優先度がそれなりに高いタスク
Priority: 3 Priorityラベルが付いていないタスクよりは優先度が高いタスク

開発環境を作る

必要なものをインストールする

Annictは以下のソフトウェアを使用して開発しています。 Annictを動かすには事前にこれらをインストールする必要があります。

  • Ruby 2.2.2
  • PostgreSQL 9.3
  • ImageMagick
  • Node.js 0.12
  • PhantomJS
    • テストを実行するときに使用しています。Annictをローカルで動かすだけであれば不要です
Annictを動かす

GitHubからソースコードをcloneしてから以下のコマンドを実行してください。

$ cd annict
$ cp config/application.yml{.example,}
$ bundle install
$ bundle exec rake db:create
$ bundle exec rake db:migrate
$ bundle exec rake db:seed
$ bundle exec rails s -b 0.0.0.0

http://localhost:3000 にアクセスすると、 サイトのトップページが表示されるはずです。

ただ、上記コマンドを実行しただけでは作品画像などは表示されないはずです。 画像を表示するには「Tombo」という画像変換サーバを別途起動する必要があります。

画像変換サーバ「Tombo」について

Annictでは作品やアバターなど画像を表示するとき、 「Tombo」という画像を動的にリサイズする画像変換サーバを使用しています。 動かし方などはTomboのリポジトリをご覧ください。

AnnictでTomboを使用するときは localhost:5000 でサーバを起動します。

テストデータの読み込みについて

作品情報などのテストデータは以下のコマンドで読み込むことができます。

$ bundle exec rake db:seed

処理に時間がかかるため、デフォルトでは50件だけ作品を保存しています。 もし100件保存したい場合は、limit という引数を指定します。

$ bundle exec rake db:seed limit=100

全作品を保存したいときは limit=0 を指定します。

bundle exec rake db:seed limit=0
application.ymlを編集する

AnnictのRailsアプリに必要な設定値は全て config/application.yml に記述しています。 開発環境でも必要に応じて設定を変更する必要があります。

例えばTwitterアカウントを使用してローカル環境でユーザ登録をしたいときは、 TwitterでOAuth認証用のアプリを作成し、config/application.yml に記述されている TWITTER_CONSUMER_KEYTWITTER_CONSUMER_SECRET を変更します。

管理画面について

Annictには作品やエピソードの情報をWebブラウザから編集することができる管理画面が存在します。 管理画面は以下のステップを踏むことで見ることができます。

まず、staffs テーブルに管理画面にログインするアカウントを登録します。

$ bundle exec rails c
> Staff.create(email: '(メールアドレス)', password: '(パスワード)')

そして http://localhost:3000/marie/signin にアクセスし、 先ほど登録したアカウント情報を入力すると、ログインすることができます。

テストを実行する

以下のコマンドでテストが実行できます。

$ bundle exec rspec

ライセンス

Copyright 2015 Annict

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.