オリジナルアプリ: タバコマネージャー
【概要】 『「なんとなく吸うか」はもうやめよう』 をテーマに開発した減煙サポートアプリです。 【特徴】 ・毎日の喫煙本数がグラフ化され視覚的に喫煙習慣を見直すことができる ・減煙による節約額や延びた寿命が算出されモチベーションを維持しながら継続できる ・吸ったタバコのレビューができる 【開発経緯】 自分の喫煙習慣を見直したいと思ったのが開発のきっかけです。 また喫煙者の方の意見を聞いていると「禁煙したいとは思わないけど、量は減らしたい。」という声が意外にも多くありました。思えば世の中に禁煙アプリは多く存在しますが、減煙をテーマにしたアプリは中々無いのではないでしょうか。そんな減煙にフォーカスしたニッチなアプリを開発しました。 【こだわった点】 ・実開発を意識するため実際に周りの喫煙者の方々に使用していただき、たくさんのレビュ ーをもとに改良してきました。 ・エンジニアとしての自走力をつけるために発生したエラーのほとんどを自力で原因を洗い 出し検証し解決してきました。 【工夫した点】 インフラ ・Herokuでのデプロイでは実開発を意識しステージング環境を用意しGitHubから自動デプ ロイされるよう設定した ・AWS(VPC・EC2・RDS・IAM・Route53)でデプロイした 全体 ・存在しないデータにアクセスされた場合、トップページにリダイレクトされる処理を書い た ・データがない場合、データの登録を促す文言が表示されるようにした ・スマホでの使用が主であるためレスポンシブデザインを意識した コード ・ヘルパーメソッドや部分テンプレートを利用し、コードの可読性と管理性を意識した ・マジックナンバーを使用しないよう自分にしかわからない数字は定数化した トップページ ・未ログインでも閲覧できるようにした ・ゲストログイン機能 ・ユーザーの声 減煙記録ページ ・記録の手間を省くためログイン後減煙記録ページに遷移するようにした ・アプリの仕様上基本スマホでの登録となるため、喫煙本数の登録ボタンを右手の親指で押しやすい位置に配置した ・喫煙本数の登録日はデフォルトで当日にした ・月ごとにデータを参照できるようにした プロフィールページ ・fontawesomeのアイコンを用いた ・強調したいデータにマーカーを引いた コレクションページ ・最新のスマホの写真データサイズでも登録できるように5MBまで対応できるバリデーションを書いた 【言語・技術】 ・Ruby ・Rails, ・JavaScript ・HTML, CSS, SCSS ・Git, Github ・Postgresql ・Heroku ・AWS(VPC・EC2・RDS・IAM・Route53) 【機能一覧】 ・ログイン・ログアウト機能(devise) ・ユーザー登録・編集機能(devise) ・ゲストログイン機能 ・グラフ表示機能(Chart.js) ・カレンダー機能(flatpickr) ・喫煙本数登録、編集、削除機能 ・プロフィール登録、編集、削除機能 ・コレクション登録、編集、削除機能 ・画像投稿機能(carrierwave/mini-magick) ・日本語化(rails-i18n) ・エラー・フラッシュ表示機能 ・レスポンシブデザイン(Bootstrap) - Github:https://github.com/Izushi/cigarette_management_app