GithubHelp home page GithubHelp logo

fluxx_engine's Introduction

FLUXX Engine

Purpose

The FLUXX engine is a rails engine that created as a building block for basic FLUXX functionality.
Its application is not limited to FLUXX, it could be used for other applications that have similar base requirements.
It replaces and extends basic rails scaffolding to provide a starting point for any model-intensive application.

Elements of the FLUXX Engine

CRUD view support

  • Controller
    • Parameterized way of configuring model-based views within a controller
      • Allows you to configurably list the fields to be displayed within an index listing, show, or form. Allows simple fields as well as partials. Leverages formtastic to generate style-able HTML for forms.
    • Display a list of records with support for searching using sphinx baked in
      • May filter by keyword or search attribute
    • Show a record
      • Configurable view template to display as HTML
      • Export as configurable CSV via a custom query
      • Export as configurable XLS via a custom query
  • Model

Real time updates

  • Make it possible to send out real time updates

Related data

  • Track and make available for display related elements. For example if the model being displayed is a contract, the users or organizations that are named on the contract.

Record locking

  • Records are locked with a timestamp when the user clicks edit. The lock is released when the time passes or when the user hits cancel or save

Multi Elements

  • Store choices for a fixed set of lists
  • TODO ESH: should we have a specific admin screen to manage these? Seems like a really good idea…

Admin Screen

  • Allow add/edit/delete of admin models and their attributes

Auto-complete

  • jquery-based autocomplete
  • Server-side support for doing a search

Pluggable search??

  • Note: this has not yet been created
  • This would allow users to substitute other search engines besides sphinx

Model functions

  • Method to configure specific date/time attributes to be stored in UTC as a day with no hours

Installation

Bundle
In your Gemfile add
gem “fluxx_engine”, :git => “[email protected]:energyfoundation/fluxx_engine.git”

Generator
rails generate audited_migration
rails generate fluxx_engine_locale
rails generate fluxx_engine_migration
rails generate fluxx_engine_public

Tests

Jose Valim’s EngineX (http://github.com/josevalim/enginex) was used to generate a dummy application that uses the rails engine to test it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.