BinaryWebPark

Integrating Fat Free CRM Into Your Rails Application

February 24, 2014

What is Fat FREE CRM?

Fat Free CRM is an open-source customer relationship management piece of software that lets you perform the basic marketing activities integral to the sales cycle.

Tracking leads, managing campaigns, and contact lists are some of the out-of-the-box features you get that are a part of any standard CRM software.

Steps to Integrate It Into Your Rails Application

Currently, the way to integrate Fat Free CRM into your Rails application is by running it as an engine.

The following steps are taken from the Fat Free CRM guides as of 2/19/14.

Step 1 – Create a new rails application at the command prompt

rails new crm_app

Step 2 – Change to crm_app directory

cd crm_app

Step 3 – Remove a few files that fatfreecrm already provides

(cd app && rm -f controllers/application_controller.rb
views/layouts/application.html.erb helpers/application_helper.rb
assets/javascripts/application.js assets/stylesheets/application.css)

Step 4 – Configure database.yml, specifying database authentication if necessary

*Note: I personally skipped this step as I was running it locally in

the development environment and used sqlite3

Step 5 – Add the fatfreecrm gem to your Gemfile, with the following line:

gem 'fat_free_crm', :git => 'git://github.com/fatfreecrm/fat_free_crm.git'<br />

Step 6 – Install gems

bundle install

Step 7 – Add the following to config/application.rb after class Application < Rails::Application

Railties.engines.each do |engine|
  config.paths['db/migrate'] += engine.paths['db/migrate'].existent
end

Step 8 – Create database, run migrations, setup admin user, etc.:

rake ffcrm:setup

You’ll be asked to create an admin and password so you can login to the fatfreecrm installation.

Start the webserver

rails s

When you navigate to http://localhost:3000/ you’ll just see the default index page from rails.

Be aware that because fatfreecrm is an engine, it has its own routes already defined. To get to your fatfreecrm installation, you’ll need to navigate to http://localhost:3000/activities and login using the admin user and password you created during the installation.

Quick Tip:

You can open the config/routes.rb file in the fatfreecrm repository or use the sextant gem to see all the routes of the Fat Free CRM engine since your own rails application’s routes.rb file won’t show them.

Resources:

  1. I’m keeping a public repo of this application at my github account.. You can download the source code there.