diff --git a/Gruntfile.js b/Gruntfile.js index f1291a7..133bcb0 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -1,42 +1,69 @@ module.exports = function(grunt) { - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - makeDemos: { - demos: { - options: { - mainTemplate: 'index.ejs', - out: 'demos' - } - }, - gh_pages: { - options: { - mainTemplate: 'index.ghpages.ejs', - out: './' - } - } - }, - uglify: { - src: { - options: { - banner: '/*! <%= pkg.name %> - v<%= pkg.version %>*/\n\n' - }, - files: { - 'dist/angular-fusioncharts.min.js': ['src/angular-fusioncharts.js'] - } - } + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + makeDemos: { + demos: { + options: { + mainTemplate: 'index.ejs', + out: 'demos' + } + }, + gh_pages: { + options: { + mainTemplate: 'index.ghpages.ejs', + out: './' + } + } + }, + uglify: { + src: { + options: { + banner: '/*! <%= pkg.name %> - v<%= pkg.version %>*/\n\n' }, - copy: { - core: { - files: [ - {src:'dist/angular-fusioncharts.min.js', dest: 'demos/js/angular-fusioncharts.min.js'}, - {src:'src/angular-fusioncharts.js', dest: 'dist/angular-fusioncharts.js'} - ] - } + files: { + 'dist/angular-fusioncharts.min.js': ['src/angular-fusioncharts.js'] + } + } + }, + copy: { + core: { + files: [ + { + src: 'dist/angular-fusioncharts.min.js', + dest: 'demos/js/angular-fusioncharts.min.js' + }, + { + src: 'src/angular-fusioncharts.js', + dest: 'dist/angular-fusioncharts.js' + } + ] + } + }, + watch: { + options: { + livereload: true + }, + taskName: { + files: ['src/*.js', 'example/*.*'], + tasks: ['default'] + } + }, + connect: { + server: { + options: { + port: 8080, + base: './', + livereload: true } - }); - grunt.loadNpmTasks('grunt-contrib-uglify'); - grunt.loadNpmTasks('grunt-contrib-copy'); - grunt.loadTasks('./grunt-tasks'); - //grunt.registerTask('default', ['makeDemos:demos', 'uglify', 'copy']); // For gh-pages branch only - grunt.registerTask('default', ['uglify', 'copy']); // For other branches + } + } + }); + grunt.loadNpmTasks('grunt-contrib-connect'); + grunt.loadNpmTasks('grunt-contrib-uglify'); + grunt.loadNpmTasks('grunt-contrib-copy'); + grunt.loadTasks('./grunt-tasks'); + grunt.loadNpmTasks('grunt-contrib-watch'); + //grunt.registerTask('default', ['makeDemos:demos', 'uglify', 'copy']); // For gh-pages branch only + grunt.registerTask('default', ['uglify', 'copy']); // For other branches + grunt.registerTask('watch-server', ['connect', 'watch']); }; diff --git a/README.md b/README.md index 347ae32..303376a 100644 --- a/README.md +++ b/README.md @@ -1,157 +1,184 @@ # angularjs-fusioncharts -Simple and effective AngularJS charts plugin for FusionCharts. +A simple and lightweight official AngularJS component for FusionCharts JavaScript charting library. angularjs-fusioncharts enables you to add JavaScript charts in your AngularJS application without any hassle. -### Details -Use this AngularJS charts plugin to add interactive charts to your web and mobile applications using just a single directive. Choose from 90+ charts & 900+ maps from FusionCharts' core [JavaScript charts](http://www.fusioncharts.com/) library. +## [Demo](https://fusioncharts.github.io/angular-fusioncharts/) - You can access all the rich charting features like events, annotations, macros, themes, image-export etc. to make your visualizations stand-out. +- Github Repo: [https://github.com/fusioncharts/angularjs-fusioncharts](https://github.com/fusioncharts/angularjs-fusioncharts) +- Documentation: [https://www.fusioncharts.com/dev/getting-started/angular/angularjs/your-first-chart-using-angularjs](https://www.fusioncharts.com/dev/getting-started/angular/angularjs/your-first-chart-using-angularjs) +- Support: [https://www.fusioncharts.com/contact-support](https://www.fusioncharts.com/contact-support) +- FusionCharts + - Official Website: [https://www.fusioncharts.com/](https://www.fusioncharts.com/) + - Official NPM Package: [https://www.npmjs.com/package/fusioncharts](https://www.npmjs.com/package/fusioncharts) +- Issues: [https://github.com/fusioncharts/angularjs-fusioncharts/issues](https://github.com/fusioncharts/angularjs-fusioncharts/issues) - ### Installation - +--- - Install fusioncharts library - ```bash - $ npm install fusioncharts --save - ``` - Alternatively you can use downloaded fusioncharts files. +## Table of Contents +- [Getting Started](#getting-started) + - [Requirements](#requirements) + - [Installation](#installation) + - [Working with chart API](#working-with-apis) + - [Working with events](#working-with-events) +- [Quick Start](#quick-start) +- [Going Beyond Charts](#going-beyond-charts) +- [Usage and Integration of FusionTime](#usage-and-integration-of-fusiontime) +- [For Contributors](#for-contributors) +- [Licensing](#licensing) - Install angular 1.x.x - ```bash - # Any angular 1.x version is compatible - $ npm install angular@1.7.2 --save - ``` - - Install angularjs-fusioncharts module - ```bash - $ npm install angularjs-fusioncharts --save - ``` - Alternatively you can use downloaded angularjs-fusioncharts wrapper. - +## Getting Started -### Demos -To learn what you can do using this Angular charts plugin, explore some [live demos](http://www.fusioncharts.com/angularjs-charts/). +### Requirements + +- **Node.js**, **NPM/Yarn** installed globally in your OS. +- You've an **AngularJS** Application. +- **FusionCharts** installed in your project, as detailed below: + +### Installation + +To install `angularjs-fusioncharts` library, run: + +```bash +$ npm install angular-fusioncharts --save +``` + +To install `fusioncharts` library: + +```bash +$ npm install fusioncharts --save +``` + +## Quick Start -### Usage #### Step 1: Include angular-fusioncharts.js and fusioncharts + In your index.html + ```xml + ``` ### Step 2: Include ng-fusioncharts in your module + In the app, include ng-fusioncharts as a dependency. If you looking for where to add the dependency, look for the call to angular.module in your code. ```javascript -angular.module("myApp", ["ng-fusioncharts"]); +angular.module('myApp', ['ng-fusioncharts']); ``` ### Step 3: Add the fusioncharts directive + In your HTML, find the section where you wish to add the chart and add a