Giter Site home page Giter Site logo

shanjock46 / tubular Goto Github PK

View Code? Open in Web Editor NEW

This project forked from unosquare/tubular

0.0 1.0 0.0 1.76 MB

A set of AngularJS directives and C# classes designed to rapidly build modern web applications

Home Page: http://unosquare.github.io/tubular/

License: MIT License

C# 6.10% HTML 3.12% JavaScript 83.80% CSS 6.98%

tubular's Introduction

Analytics Build Status Build status Coverage Status

Tubular

Tubular is a set of AngularJS directives and C# classes designed to rapidly build modern web applications. The centerpiece of Tubular is its fully templateable grid with lots of features such as server-side pagination, multi-column sorting and filtering, built-in export to CSV (client-side), and in-line editing of rows via templates.

Please visit the Tubular GitHub Page to learn how quickly you can start coding. Don't forget to check out the Tubular Generator which quickly turns models into an awesome UIs!

NuGet Installation NuGet version

Package containing only the client-side stuff

PM> Install-Package Tubular

Package containing the server-side stuff (which also installs the client-side stuff)

PM> Install-Package Tubular.ServerSide

Bower Installation Bower version

# install Tubular package and add it to bower.json
$ bower install tubular --save

npm Installation npm version

The npm package only contains the Tubular Template Module, if you want to use all of Tubular's features, please install the Bower package instead.

# install Tubular package and add it to package.json
$ npm install tubular --save

Dependencies

You will need to reference the following JS libraries in order to use Tubular in your HTML:

Also, if you use the Visual Studio you will need the excellent Web Essentials plug-in in order to generate the Tubular bundles.

Using a CDN

You can get all the dependencies using the following links in your master HTML page. jsDelivr provides almost everything you need to import.

<link rel="stylesheet" href="//cdn.jsdelivr.net/bootstrap/3.3.4/css/bootstrap.min.css" />
<link rel="stylesheet" href="//cdn.jsdelivr.net/fontawesome/4.3.0/css/font-awesome.min.css" />

<script src="//cdn.jsdelivr.net/g/jquery,bootstrap,angularjs(angular.min.js+angular-animate.min.js+angular-cookies.min.js+angular-route.min.js),filesaver.js,angular.bootstrap(ui-bootstrap.min.js+ui-bootstrap-tpls.min.js),blob.js(Blob.js),filesaver.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-local-storage/0.1.5/angular-local-storage.min.js"></script>

Then you will need to either grab your own copy of Tubular or you use jsDelivr to reference Tubular CSS and JS files.

<link rel="stylesheet" href="//cdn.jsdelivr.net/tubular/latest/tubular-bundle.min.css" />
<script src="//cdn.jsdelivr.net/tubular/latest/tubular-bundle.min.js"></script>

Finally update your modules to include Tubular, for example if your module is called app, then you will need to add Tubular as a dependency as follows:

angular.module('app', ['ngRoute','ngCookies','tubular']);

##Boilerplate

We have a basic Boilerplate with everything that you need to start your own tubular project. We are already working on a Yeoman Generator. Check out the generator-tubular repository to check out our progress.

Samples

You can check out the Tubular GitHub Page to get a few examples. We still need to work on more samples and better documentation, but we feel what we have now will get you up to speed very quickly :).

The following HTML represents a basic grid. You don't need to add anything else to your controller! Everything you need is to create your markup.

 <div class="container">
        <tb-grid server-url="/data/customers.json" page-size="20" class="row">
            <div class="col-md-12">
                <div class="panel panel-default panel-rounded">
                    <tb-grid-table class="table-bordered">
                        <tb-column-definitions>
                            <tb-column name="CustomerName">
                                <tb-column-header>
                                    <span>{{label}}</span>
                                </tb-column-header>
                            </tb-column>
                            <tb-column name="Invoices">
                                <tb-column-header>
                                    <span>{{label}}</span>
                                </tb-column-header>
                            </tb-column>
                        </tb-column-definitions>
                        <tb-row-set>
                            <tb-row-template ng-repeat="row in $component.rows" row-model="row" selectable="true">
                                <tb-cell-template>
                                    {{row.CustomerName}}
                                </tb-cell-template>
                                <tb-cell-template>
                                    {{row.Invoices}}
                                </tb-cell-template>
                            </tb-row-template>
                        </tb-row-set>
                    </tb-grid-table>
                </div>
            </div>
        </tb-grid>
    </div>

Tubular works directly with either your own OData service or a custom RESTful call. You can simplify your RESTful API significantly by using our .NET Tubular.ServerSide library which handles IQueryables easily.

tubular's People

Contributors

geoperez avatar mariodivece avatar

Watchers

 avatar

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.