Skip to content

shurab/rhoconnect-ffcrm-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

RhoConnect integration server with Fat Free CRM backend

Real-world backend application example based on Fat Free CRM, RhoConnect app, RhoConnect-rb plugin, and Rhodes client application. This project demonstrates how RhoConnect integration server might be used to work with an open source, Ruby on Rails customer relationship management platform (Fat Free CRM) and includes the following components:

Fat Free CRM

Directory fat_free-crm includes source of Fat Free CRM with the following changes:

  • file config\initializers\rhoconnect.rb shows how to configure rhoconnect rails plugin
  • file fat_free_crm/app/models/entities/account.rb includes required rhoconnect plugin code (plugin resources, methods partition and rhoconnect_query)
  • file fat_free_crm/app/models/entities/campaign.rb includes required rhoconnect plugin code
  • file fat_free_crm/app/models/entities/lead.rb includes required rhoconnect plugin code
  • file fat_free_crm/app/models/entities/opportunity.rb includes required rhoconnect plugin code
  • file fat_free_crm/app/models/polymorphic/task.rb includes required rhoconnect plugin code
  • file fat_free_crm/app/models/users/user.rb includes required rhoconnect plugin code

All Fat Free CRM models have partitioned at application level (:app) and shared by all rhodes users. Only exception is task model. By business logic tasks always user specific and it has :user partition.

RhoConnect Server

RhoConnect has one source adapter for Account model and shows how plugin REST API should be used in update/create/delete mothods. Method query demonstates usage of RhoConeect API method stash_result. This method might be very usuful in the case of large datasets on backend.

Rhodes Client application

Application is generated by running rhodes generator and has the following models:

  • Account
  • Campaign
  • Contact
  • Lead
  • Opportunity
  • Task

Running example

  • Start Rhoconect Server (terminal #1)
$ bundle install
$ bundle exec rhoconnect start 
  • Start Fat Free CRM Server (terminal #2)
$ bundle install
$ rails server

TODO: Check Rhoconenct Web console

  • Start Rhodes Client application (terminal #3)
$ rake run:rhosimulator

TODO:

  • Rhodes client needs more work in GUI, esp. in create/update forms
  • RhoConnect app should demonstrate usage of associations between models

About

Real-world backend application example based on Fat Free CRM, RhoConnect app, RhoConnect-rb plugin, and Rhodes client application.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors