Skip to content

phgrey/netzke-basepack

 
 

Repository files navigation

Netzke Basepack Gem Version Build Status Code Climate

RDocs

A pack of pre-built Netzke components that can be used as building blocks for your webapps.

Included components

Basepack includes the following components:

  • Grid - a grid panel with a thick bag of features
  • Form - a form panel with automatic binding of fields
  • TabPanel - a tab panel with support for lazy loading of nested components
  • Accordion - an accordion panel with support for lazy loading of nested components
  • Window - a window which stores its size, position, and maximized state

Besides, Basepack implements:

  • persistence of region sizes and collapsed states of an arbitrary component that uses border layout (see ItemPersistence)
  • GridLiveSearch - a plugin that allows enhancing any grid with live search functionality

Requirements

  • Ruby ~> 1.9.2
  • Rails ~> 3.2.0
  • Ext JS ~> 4.1.0

Installation

In your Gemfile:

gem 'netzke-basepack'

For the "edge" stuff, tell bundler to get the gem straight from GitHub:

gem 'netzke-basepack', :git => "git://github.com/netzke/netzke-basepack.git"

Usage

Embed a basepack component into a view as any other Netzke component, e.g.:

<%= netzke :books, :class_name => 'Netzke::Basepack::Grid', :model => 'Book' %>

For more examples, see http://netzke-demo.herokuapp.com (source code), and look into test/basepack_test_app.

Running tests

Before being able run the test app and the tests themselves, you must link your Ext JS library to test/basepack_test_app/public, e.g. (from the gems's root):

$ ln -s PATH/TO/YOUR/EXTJS/FILES test/basepack_test_app/public/extjs

The bundled test/basepack_test_app application used for automated testing can be easily run as a stand-alone Rails app. It's a good source of concise, focused examples. After starting the application, access any of the test components (located in app/components) by using the following url:

http://localhost:3000/components/{name of the component's class}

For example http://localhost:3000/components/BookGrid

Also, you can see the list of test components on the index page (along with links to the source code):

http://localhost:3000/

To run all the tests (from the gem's root):

$ rake

This assumes that the Ext JS library is located/symlinked in test/core_test_app/public/extjs.

Sourcing Ext JS files from Sencha CDN is broken in Basepack atm.

Using ORM other than ActiveRecord

Using ActiveRecord as its default ORM, Basepack is designed to be extendable with data adapters for other ORMs. If you're thinking about implementing an adapter, AbstractAdapter and ActiveRecordAdapter classes can be used as a reference.

There's some work being done in the direction of implementing DataMapper and Sequel adapters, but at this moment the code is broken.

Icons support

Netzke Basepack can make use of FamFamFam Silk icon set (http://www.famfamfam.com/archive/silk-icons-thats-your-lot/). To enable this, download the icons and put the "icons" folder into your app's public/images folder. Then restart your application.

Contributions and support

Help developing Netzke by submitting a pull request when you think others can benefit from it.

If you feel particularily generous, you can donate a couple of bucks a week at GitTip.

Useful links


Copyright (c) 2008-2012 nomadcoder, released under the MIT license (see LICENSE).

Note that Ext JS is licensed differently, and you may need to purchase a commercial license in order to use it in your projects!

About

Pre-built feature-packed Netzke components

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 48.8%
  • Ruby 48.5%
  • CoffeeScript 2.4%
  • Shell 0.3%