ca faisait longtemps que je n’avais rien publié.. et comme je bosse actuellement sur une web-app, je vais vous détailler un peu mon Gemfile :
la base, les gems de base lorsqu’on créée une app rails :
gem 'rails', '= 3.2.21' gem 'therubyracer', platforms: :ruby gem 'test-unit' gem 'passenger' # passenger pour le déploiement de l'app sur un serveur apache
mes ajouts pour réaliser une marketplace en bitcoin :
gem 'mysql2' # ma BDD sql gem 'devise', git: 'https://github.com/plataformatec/devise' # devise, le must pour le mode connecté # gems pour le bitcoin, interface avec le blockchain notamment gem 'bitcoin-ruby', git: 'https://github.com/lian/bitcoin-ruby', branch: 'master', require: 'bitcoin' gem 'blockchain' gem 'activeadmin' gem 'meta_search', '>= 1.1.0.pre' gem 'jquery-rails' gem "jquery-ui-rails" # partie scheduler gem 'delayed_job_active_record' gem "daemons" gem 'will_paginate', '~> 3.0.6' # pour la pagination des résultats gem 'nokogiri' gem "paperclip-ffmpeg" # paperclip, pour gérer l'upload de fichiers # un petit moteur de recherche dans votre web app gem 'elasticsearch-model' gem 'elasticsearch-rails' gem 'ffi' gem 'chartkick' # pour faire de jolis dashboards gem 'groupdate' # pour extraire les datas de tracking proprement pour le dashboard gem 'jquery_mobile_rails' # pour la partie jquery mobile de mon app en full responsive # gem pour partager sur les réseaux sociaux, growth hacking inside ;) gem 'social-share-button', '~> 0.1.8', git: 'https://github.com/cuterxy/social-share-button.git' gem 'browser' # détection du navigateur, utile pour le tracking gem 'ahoy_matey' # pour stocker les visites, les actions, le must pour l'analytics sur rails gem 'activeuuid' gem 'fluent-logger'
Comme vous le voyez, pas besoin de grand chose au final pour réaliser une webapp. Il vous reste à trouver un joli template responsive, l’intégrer dans votre layout et dans vos vues, ajouter un peu de fioritures (responsive tab, slider, etc..) en js et le tour est joué !
A noter que j’ai ajouté un champ « admin » dans le model « user » et que j’affiche dans le menu connecté un lien vers mon dashboard pour avoir une visu du traffic. Autre point prévu dans cette web-app, une vue « diffusion » qui me permettra de cibler certains utilisateurs pour faire du mailing auto (envoyer un mail aux utilisateurs ayant réalisés une action particulière par exemple).
Voilà quelques captures écran du résultat :