Snap.svg

The JavaScript library for modern SVG graphics.

README

Snap.svg · Build Status  CDNJS GitHub Tag License
======

A JavaScript SVG library for the modern web. Learn more at snapsvg.io.


Install

Bower -bower install snap.svg Bower
npm -npm install snapsvg npm version Downloads
Manual Minified - https://github.com/adobe-webplatform/Snap.svg/raw/master/dist/snap.svg-min.js
Manual Unminified - https://raw.githubusercontent.com/adobe-webplatform/Snap.svg/master/dist/snap.svg.js


Learn



Use


In your HTML file, load simply by:
  1. ``` html
  2. <script src="snap.svg-min.js"></script>
  3. ```
No other scripts are needed. Both the minified and uncompressed (for development) versions are in the /dist folder.

webpack

To load with webpack 2.x and 3.x, install Imports Loader (npm i -D imports-loader), and add the following to your webpack config:

  1. ``` js
  2. module: {
  3.   rules: [
  4.     {
  5.       test: require.resolve('snapsvg/dist/snap.svg.js'),
  6.       use: 'imports-loader?this=>window,fix=>module.exports=0',
  7.     },
  8.   ],
  9. },
  10. resolve: {
  11.   alias: {
  12.     snapsvg: 'snapsvg/dist/snap.svg.js',
  13.   },
  14. },
  15. ```

Then, in any module you’d like to require Snap, use:
  1. ```
  2. import Snap from 'snapsvg';
  3. ```

Build Build Status


Snap.svg uses Grunt to build.

Open the terminal from the Snap.svg directory:
  1. ```sh
  2. cd Snap.svg
  3. ```
Install its command line interface (CLI) globally:
  1. ```sh
  2. npm install -g grunt-cli
  3. ```
_*You might need to use sudo npm, depending on your configuration._

Install dependencies with npm:
  1. ```sh
  2. npm install
  3. ```
_*Snap.svg uses Grunt 0.4.0. You might want to read more on their website if you haven’t upgraded since a lot has changed._

To build the files run
  1. ```sh
  2. grunt
  3. ```
The results will be built into the dist folder.
Alternatively type grunt watch to have the build run automatically when you make changes to source files.

Testing


Tests are located in test folder. To run tests, simply open test.html in there. Automatic tests use PhantomJS to scrap this file, so you can use it as a reference.

Alternatively, install PhantomJS and run command
  1. ```sh
  2. grunt test
  3. ```

Contribute


Fork the repo.
Create a branch:
  1. ```sh
  2. git checkout -b my_branch
  3. ```
Add your changes.
Check that tests are passing
Commit your changes:
  1. ```sh
  2. git commit -am "Added some awesome stuff"
  3. ```
Push your branch:
  1. ```sh
  2. git push origin my_branch
  3. ```
Make a pull request todev(!) branch.

Note: Pull requests to other branches than dev or without filled CLA wouldn’t be accepted.